
trasm:     file format elf64-x86-64


Disassembly of section .text:

00000000000010f0 <_start>:
    10f0:	31 ed                	xor    %ebp,%ebp
    10f2:	49 89 d1             	mov    %rdx,%r9
    10f5:	5e                   	pop    %rsi
    10f6:	48 89 e2             	mov    %rsp,%rdx
    10f9:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
    10fd:	50                   	push   %rax
    10fe:	54                   	push   %rsp
    10ff:	4c 8d 05 2a 28 00 00 	lea    0x282a(%rip),%r8        # 3930 <__libc_csu_fini>
    1106:	48 8d 0d c3 27 00 00 	lea    0x27c3(%rip),%rcx        # 38d0 <__libc_csu_init>
    110d:	48 8d 3d c1 00 00 00 	lea    0xc1(%rip),%rdi        # 11d5 <main>
    1114:	ff 15 c6 4e 00 00    	callq  *0x4ec6(%rip)        # 5fe0 <__libc_start_main@GLIBC_2.2.5>
    111a:	f4                   	hlt    
    111b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001120 <deregister_tm_clones>:
    1120:	48 8d 3d 59 4f 00 00 	lea    0x4f59(%rip),%rdi        # 6080 <__TMC_END__>
    1127:	48 8d 05 52 4f 00 00 	lea    0x4f52(%rip),%rax        # 6080 <__TMC_END__>
    112e:	48 39 f8             	cmp    %rdi,%rax
    1131:	74 15                	je     1148 <deregister_tm_clones+0x28>
    1133:	48 8b 05 9e 4e 00 00 	mov    0x4e9e(%rip),%rax        # 5fd8 <_ITM_deregisterTMCloneTable>
    113a:	48 85 c0             	test   %rax,%rax
    113d:	74 09                	je     1148 <deregister_tm_clones+0x28>
    113f:	ff e0                	jmpq   *%rax
    1141:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    1148:	c3                   	retq   
    1149:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001150 <register_tm_clones>:
    1150:	48 8d 3d 29 4f 00 00 	lea    0x4f29(%rip),%rdi        # 6080 <__TMC_END__>
    1157:	48 8d 35 22 4f 00 00 	lea    0x4f22(%rip),%rsi        # 6080 <__TMC_END__>
    115e:	48 29 fe             	sub    %rdi,%rsi
    1161:	48 c1 fe 03          	sar    $0x3,%rsi
    1165:	48 89 f0             	mov    %rsi,%rax
    1168:	48 c1 e8 3f          	shr    $0x3f,%rax
    116c:	48 01 c6             	add    %rax,%rsi
    116f:	48 d1 fe             	sar    %rsi
    1172:	74 14                	je     1188 <register_tm_clones+0x38>
    1174:	48 8b 05 75 4e 00 00 	mov    0x4e75(%rip),%rax        # 5ff0 <_ITM_registerTMCloneTable>
    117b:	48 85 c0             	test   %rax,%rax
    117e:	74 08                	je     1188 <register_tm_clones+0x38>
    1180:	ff e0                	jmpq   *%rax
    1182:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
    1188:	c3                   	retq   
    1189:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001190 <__do_global_dtors_aux>:
    1190:	80 3d e9 4e 00 00 00 	cmpb   $0x0,0x4ee9(%rip)        # 6080 <__TMC_END__>
    1197:	75 2f                	jne    11c8 <__do_global_dtors_aux+0x38>
    1199:	55                   	push   %rbp
    119a:	48 83 3d 56 4e 00 00 	cmpq   $0x0,0x4e56(%rip)        # 5ff8 <__cxa_finalize@GLIBC_2.2.5>
    11a1:	00 
    11a2:	48 89 e5             	mov    %rsp,%rbp
    11a5:	74 0c                	je     11b3 <__do_global_dtors_aux+0x23>
    11a7:	48 8b 3d ca 4e 00 00 	mov    0x4eca(%rip),%rdi        # 6078 <__dso_handle>
    11ae:	e8 2d ff ff ff       	callq  10e0 <__cxa_finalize@plt>
    11b3:	e8 68 ff ff ff       	callq  1120 <deregister_tm_clones>
    11b8:	c6 05 c1 4e 00 00 01 	movb   $0x1,0x4ec1(%rip)        # 6080 <__TMC_END__>
    11bf:	5d                   	pop    %rbp
    11c0:	c3                   	retq   
    11c1:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    11c8:	c3                   	retq   
    11c9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011d0 <frame_dummy>:
    11d0:	e9 7b ff ff ff       	jmpq   1150 <register_tm_clones>

00000000000011d5 <main>:
    11d5:	55                   	push   %rbp
    11d6:	48 89 e5             	mov    %rsp,%rbp
    11d9:	48 83 ec 30          	sub    $0x30,%rsp
    11dd:	89 7d dc             	mov    %edi,-0x24(%rbp)
    11e0:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
    11e4:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%rbp)
    11eb:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    11f2:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
    11f9:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%rbp)
    1200:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    1207:	c7 05 b3 53 00 00 00 	movl   $0x0,0x53b3(%rip)        # 65c4 <ncalls>
    120e:	00 00 00 
    1211:	c7 05 ad 53 00 00 00 	movl   $0x0,0x53ad(%rip)        # 65c8 <njmps>
    1218:	00 00 00 
    121b:	c7 05 a7 53 00 00 00 	movl   $0x0,0x53a7(%rip)        # 65cc <nusage>
    1222:	00 00 00 
    1225:	c7 05 a1 53 00 00 00 	movl   $0x0,0x53a1(%rip)        # 65d0 <nfunc>
    122c:	00 00 00 
    122f:	48 8d 35 da 2d 00 00 	lea    0x2dda(%rip),%rsi        # 4010 <_IO_stdin_used+0x10>
    1236:	48 8d 3d d5 2d 00 00 	lea    0x2dd5(%rip),%rdi        # 4012 <_IO_stdin_used+0x12>
    123d:	e8 6e fe ff ff       	callq  10b0 <fopen@plt>
    1242:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
    1246:	c7 45 ec ff 03 00 00 	movl   $0x3ff,-0x14(%rbp)
    124d:	c7 05 69 53 00 00 01 	movl   $0x1,0x5369(%rip)        # 65c0 <lineno>
    1254:	00 00 00 
    1257:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
    125e:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    1265:	ba 00 04 00 00       	mov    $0x400,%edx
    126a:	be 00 00 00 00       	mov    $0x0,%esi
    126f:	48 8d 3d 4a 4e 00 00 	lea    0x4e4a(%rip),%rdi        # 60c0 <lbuf>
    1276:	e8 f5 fd ff ff       	callq  1070 <memset@plt>
    127b:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
    127f:	48 8b 00             	mov    (%rax),%rax
    1282:	48 89 c6             	mov    %rax,%rsi
    1285:	48 8d 3d 8c 2d 00 00 	lea    0x2d8c(%rip),%rdi        # 4018 <_IO_stdin_used+0x18>
    128c:	b8 00 00 00 00       	mov    $0x0,%eax
    1291:	e8 ca fd ff ff       	callq  1060 <printf@plt>
    1296:	48 8d 3d bd 2d 00 00 	lea    0x2dbd(%rip),%rdi        # 405a <_IO_stdin_used+0x5a>
    129d:	e8 9e fd ff ff       	callq  1040 <puts@plt>
    12a2:	e9 ba 00 00 00       	jmpq   1361 <main+0x18c>
    12a7:	83 7d f0 0a          	cmpl   $0xa,-0x10(%rbp)
    12ab:	75 7d                	jne    132a <main+0x155>
    12ad:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    12b1:	74 24                	je     12d7 <main+0x102>
    12b3:	8b 15 07 53 00 00    	mov    0x5307(%rip),%edx        # 65c0 <lineno>
    12b9:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
    12bd:	48 8b 00             	mov    (%rax),%rax
    12c0:	8b 4d f8             	mov    -0x8(%rbp),%ecx
    12c3:	48 89 c6             	mov    %rax,%rsi
    12c6:	48 8d 3d a3 2d 00 00 	lea    0x2da3(%rip),%rdi        # 4070 <_IO_stdin_used+0x70>
    12cd:	b8 00 00 00 00       	mov    $0x0,%eax
    12d2:	e8 89 fd ff ff       	callq  1060 <printf@plt>
    12d7:	83 7d f8 00          	cmpl   $0x0,-0x8(%rbp)
    12db:	74 11                	je     12ee <main+0x119>
    12dd:	8b 45 f8             	mov    -0x8(%rbp),%eax
    12e0:	89 c6                	mov    %eax,%esi
    12e2:	48 8d 3d d7 4d 00 00 	lea    0x4dd7(%rip),%rdi        # 60c0 <lbuf>
    12e9:	e8 e6 00 00 00       	callq  13d4 <checkline>
    12ee:	ba 00 04 00 00       	mov    $0x400,%edx
    12f3:	be 00 00 00 00       	mov    $0x0,%esi
    12f8:	48 8d 3d c1 4d 00 00 	lea    0x4dc1(%rip),%rdi        # 60c0 <lbuf>
    12ff:	e8 6c fd ff ff       	callq  1070 <memset@plt>
    1304:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    130b:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
    1312:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    1319:	8b 05 a1 52 00 00    	mov    0x52a1(%rip),%eax        # 65c0 <lineno>
    131f:	83 c0 01             	add    $0x1,%eax
    1322:	89 05 98 52 00 00    	mov    %eax,0x5298(%rip)        # 65c0 <lineno>
    1328:	eb 37                	jmp    1361 <main+0x18c>
    132a:	83 7d f0 09          	cmpl   $0x9,-0x10(%rbp)
    132e:	75 06                	jne    1336 <main+0x161>
    1330:	83 45 f8 08          	addl   $0x8,-0x8(%rbp)
    1334:	eb 04                	jmp    133a <main+0x165>
    1336:	83 45 f8 01          	addl   $0x1,-0x8(%rbp)
    133a:	8b 45 f8             	mov    -0x8(%rbp),%eax
    133d:	3b 45 ec             	cmp    -0x14(%rbp),%eax
    1340:	7e 07                	jle    1349 <main+0x174>
    1342:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%rbp)
    1349:	8b 45 f0             	mov    -0x10(%rbp),%eax
    134c:	89 c1                	mov    %eax,%ecx
    134e:	8b 45 f4             	mov    -0xc(%rbp),%eax
    1351:	48 98                	cltq   
    1353:	48 8d 15 66 4d 00 00 	lea    0x4d66(%rip),%rdx        # 60c0 <lbuf>
    135a:	88 0c 10             	mov    %cl,(%rax,%rdx,1)
    135d:	83 45 f4 01          	addl   $0x1,-0xc(%rbp)
    1361:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    1365:	48 89 c7             	mov    %rax,%rdi
    1368:	e8 13 fd ff ff       	callq  1080 <fgetc@plt>
    136d:	89 45 f0             	mov    %eax,-0x10(%rbp)
    1370:	83 7d f0 ff          	cmpl   $0xffffffff,-0x10(%rbp)
    1374:	0f 85 2d ff ff ff    	jne    12a7 <main+0xd2>
    137a:	8b 35 4c 52 00 00    	mov    0x524c(%rip),%esi        # 65cc <nusage>
    1380:	8b 0d 42 52 00 00    	mov    0x5242(%rip),%ecx        # 65c8 <njmps>
    1386:	8b 15 38 52 00 00    	mov    0x5238(%rip),%edx        # 65c4 <ncalls>
    138c:	8b 05 3e 52 00 00    	mov    0x523e(%rip),%eax        # 65d0 <nfunc>
    1392:	41 89 f0             	mov    %esi,%r8d
    1395:	89 c6                	mov    %eax,%esi
    1397:	48 8d 3d fa 2c 00 00 	lea    0x2cfa(%rip),%rdi        # 4098 <_IO_stdin_used+0x98>
    139e:	b8 00 00 00 00       	mov    $0x0,%eax
    13a3:	e8 b8 fc ff ff       	callq  1060 <printf@plt>
    13a8:	e8 d3 10 00 00       	callq  2480 <report_usetree>
    13ad:	e8 92 0e 00 00       	callq  2244 <report_curfunc>
    13b2:	c7 05 34 52 00 00 00 	movl   $0x0,0x5234(%rip)        # 65f0 <sgn>
    13b9:	00 00 00 
    13bc:	e8 f3 12 00 00       	callq  26b4 <pr_functree>
    13c1:	48 8d 3d 14 2d 00 00 	lea    0x2d14(%rip),%rdi        # 40dc <_IO_stdin_used+0xdc>
    13c8:	e8 73 fc ff ff       	callq  1040 <puts@plt>
    13cd:	b8 00 00 00 00       	mov    $0x0,%eax
    13d2:	c9                   	leaveq 
    13d3:	c3                   	retq   

00000000000013d4 <checkline>:
    13d4:	55                   	push   %rbp
    13d5:	48 89 e5             	mov    %rsp,%rbp
    13d8:	48 83 ec 10          	sub    $0x10,%rsp
    13dc:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    13e0:	89 75 f4             	mov    %esi,-0xc(%rbp)
    13e3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    13e7:	0f b6 00             	movzbl (%rax),%eax
    13ea:	3c 20                	cmp    $0x20,%al
    13ec:	75 13                	jne    1401 <checkline+0x2d>
    13ee:	8b 55 f4             	mov    -0xc(%rbp),%edx
    13f1:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    13f5:	89 d6                	mov    %edx,%esi
    13f7:	48 89 c7             	mov    %rax,%rdi
    13fa:	e8 16 00 00 00       	callq  1415 <checkline_call>
    13ff:	eb 12                	jmp    1413 <checkline+0x3f>
    1401:	8b 55 f4             	mov    -0xc(%rbp),%edx
    1404:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1408:	89 d6                	mov    %edx,%esi
    140a:	48 89 c7             	mov    %rax,%rdi
    140d:	e8 d0 00 00 00       	callq  14e2 <checkline_func>
    1412:	90                   	nop
    1413:	c9                   	leaveq 
    1414:	c3                   	retq   

0000000000001415 <checkline_call>:
    1415:	55                   	push   %rbp
    1416:	48 89 e5             	mov    %rsp,%rbp
    1419:	48 83 ec 20          	sub    $0x20,%rsp
    141d:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    1421:	89 75 e4             	mov    %esi,-0x1c(%rbp)
    1424:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    142b:	00 
    142c:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    1433:	00 
    1434:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1438:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    143c:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1440:	48 8d 35 a2 2c 00 00 	lea    0x2ca2(%rip),%rsi        # 40e9 <_IO_stdin_used+0xe9>
    1447:	48 89 c7             	mov    %rax,%rdi
    144a:	e8 81 fc ff ff       	callq  10d0 <strstr@plt>
    144f:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1453:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1458:	74 13                	je     146d <checkline_call+0x58>
    145a:	8b 55 e4             	mov    -0x1c(%rbp),%edx
    145d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1461:	89 d6                	mov    %edx,%esi
    1463:	48 89 c7             	mov    %rax,%rdi
    1466:	e8 bf 02 00 00       	callq  172a <checkline_callq>
    146b:	eb 73                	jmp    14e0 <checkline_call+0xcb>
    146d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1471:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1475:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1479:	48 8d 35 70 2c 00 00 	lea    0x2c70(%rip),%rsi        # 40f0 <_IO_stdin_used+0xf0>
    1480:	48 89 c7             	mov    %rax,%rdi
    1483:	e8 48 fc ff ff       	callq  10d0 <strstr@plt>
    1488:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    148c:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1491:	74 13                	je     14a6 <checkline_call+0x91>
    1493:	8b 55 e4             	mov    -0x1c(%rbp),%edx
    1496:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    149a:	89 d6                	mov    %edx,%esi
    149c:	48 89 c7             	mov    %rax,%rdi
    149f:	e8 31 04 00 00       	callq  18d5 <checkline_jmpq>
    14a4:	eb 3a                	jmp    14e0 <checkline_call+0xcb>
    14a6:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14aa:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    14ae:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    14b2:	48 8d 35 3d 2c 00 00 	lea    0x2c3d(%rip),%rsi        # 40f6 <_IO_stdin_used+0xf6>
    14b9:	48 89 c7             	mov    %rax,%rdi
    14bc:	e8 0f fc ff ff       	callq  10d0 <strstr@plt>
    14c1:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    14c5:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    14ca:	74 13                	je     14df <checkline_call+0xca>
    14cc:	8b 55 e4             	mov    -0x1c(%rbp),%edx
    14cf:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    14d3:	89 d6                	mov    %edx,%esi
    14d5:	48 89 c7             	mov    %rax,%rdi
    14d8:	e8 a4 05 00 00       	callq  1a81 <checkline_usage>
    14dd:	eb 01                	jmp    14e0 <checkline_call+0xcb>
    14df:	90                   	nop
    14e0:	c9                   	leaveq 
    14e1:	c3                   	retq   

00000000000014e2 <checkline_func>:
    14e2:	55                   	push   %rbp
    14e3:	48 89 e5             	mov    %rsp,%rbp
    14e6:	48 83 ec 30          	sub    $0x30,%rsp
    14ea:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    14ee:	89 75 d4             	mov    %esi,-0x2c(%rbp)
    14f1:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    14f8:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    14ff:	00 
    1500:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    1507:	00 
    1508:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    150c:	48 8d 35 e3 2b 00 00 	lea    0x2be3(%rip),%rsi        # 40f6 <_IO_stdin_used+0xf6>
    1513:	48 89 c7             	mov    %rax,%rdi
    1516:	e8 b5 fb ff ff       	callq  10d0 <strstr@plt>
    151b:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    151f:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1524:	0f 84 e2 01 00 00    	je     170c <checkline_func+0x22a>
    152a:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    152e:	48 8d 35 c4 2b 00 00 	lea    0x2bc4(%rip),%rsi        # 40f9 <_IO_stdin_used+0xf9>
    1535:	48 89 c7             	mov    %rax,%rdi
    1538:	e8 93 fb ff ff       	callq  10d0 <strstr@plt>
    153d:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1541:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1546:	0f 85 c3 01 00 00    	jne    170f <checkline_func+0x22d>
    154c:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1550:	48 8d 35 ac 2b 00 00 	lea    0x2bac(%rip),%rsi        # 4103 <_IO_stdin_used+0x103>
    1557:	48 89 c7             	mov    %rax,%rdi
    155a:	e8 71 fb ff ff       	callq  10d0 <strstr@plt>
    155f:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1563:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1568:	0f 85 a4 01 00 00    	jne    1712 <checkline_func+0x230>
    156e:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1572:	48 8d 35 9d 2b 00 00 	lea    0x2b9d(%rip),%rsi        # 4116 <_IO_stdin_used+0x116>
    1579:	48 89 c7             	mov    %rax,%rdi
    157c:	e8 4f fb ff ff       	callq  10d0 <strstr@plt>
    1581:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1585:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    158a:	0f 85 85 01 00 00    	jne    1715 <checkline_func+0x233>
    1590:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1594:	48 8d 35 93 2b 00 00 	lea    0x2b93(%rip),%rsi        # 412e <_IO_stdin_used+0x12e>
    159b:	48 89 c7             	mov    %rax,%rdi
    159e:	e8 2d fb ff ff       	callq  10d0 <strstr@plt>
    15a3:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    15a7:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    15ac:	0f 85 66 01 00 00    	jne    1718 <checkline_func+0x236>
    15b2:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    15b6:	48 8d 35 87 2b 00 00 	lea    0x2b87(%rip),%rsi        # 4144 <_IO_stdin_used+0x144>
    15bd:	48 89 c7             	mov    %rax,%rdi
    15c0:	e8 0b fb ff ff       	callq  10d0 <strstr@plt>
    15c5:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    15c9:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    15ce:	0f 85 47 01 00 00    	jne    171b <checkline_func+0x239>
    15d4:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    15d8:	48 8d 35 7e 2b 00 00 	lea    0x2b7e(%rip),%rsi        # 415d <_IO_stdin_used+0x15d>
    15df:	48 89 c7             	mov    %rax,%rdi
    15e2:	e8 e9 fa ff ff       	callq  10d0 <strstr@plt>
    15e7:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    15eb:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    15f0:	0f 85 28 01 00 00    	jne    171e <checkline_func+0x23c>
    15f6:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    15fa:	48 8d 35 6b 2b 00 00 	lea    0x2b6b(%rip),%rsi        # 416c <_IO_stdin_used+0x16c>
    1601:	48 89 c7             	mov    %rax,%rdi
    1604:	e8 c7 fa ff ff       	callq  10d0 <strstr@plt>
    1609:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    160d:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1612:	0f 85 09 01 00 00    	jne    1721 <checkline_func+0x23f>
    1618:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    161c:	48 8d 35 5c 2b 00 00 	lea    0x2b5c(%rip),%rsi        # 417f <_IO_stdin_used+0x17f>
    1623:	48 89 c7             	mov    %rax,%rdi
    1626:	e8 a5 fa ff ff       	callq  10d0 <strstr@plt>
    162b:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    162f:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1634:	0f 85 ea 00 00 00    	jne    1724 <checkline_func+0x242>
    163a:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    163e:	be 3c 00 00 00       	mov    $0x3c,%esi
    1643:	48 89 c7             	mov    %rax,%rdi
    1646:	e8 05 fa ff ff       	callq  1050 <strchr@plt>
    164b:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    164f:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1654:	0f 84 cd 00 00 00    	je     1727 <checkline_func+0x245>
    165a:	ba 00 01 00 00       	mov    $0x100,%edx
    165f:	be 00 00 00 00       	mov    $0x0,%esi
    1664:	48 8d 3d 55 4e 00 00 	lea    0x4e55(%rip),%rdi        # 64c0 <idbuf>
    166b:	e8 00 fa ff ff       	callq  1070 <memset@plt>
    1670:	48 83 45 f0 01       	addq   $0x1,-0x10(%rbp)
    1675:	48 8d 05 44 4e 00 00 	lea    0x4e44(%rip),%rax        # 64c0 <idbuf>
    167c:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    1680:	c7 45 fc ff 00 00 00 	movl   $0xff,-0x4(%rbp)
    1687:	eb 42                	jmp    16cb <checkline_func+0x1e9>
    1689:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    168d:	74 49                	je     16d8 <checkline_func+0x1f6>
    168f:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1693:	0f b6 00             	movzbl (%rax),%eax
    1696:	3c 3e                	cmp    $0x3e,%al
    1698:	74 41                	je     16db <checkline_func+0x1f9>
    169a:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    169e:	0f b6 00             	movzbl (%rax),%eax
    16a1:	3c 2b                	cmp    $0x2b,%al
    16a3:	74 39                	je     16de <checkline_func+0x1fc>
    16a5:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    16a9:	0f b6 00             	movzbl (%rax),%eax
    16ac:	3c 2e                	cmp    $0x2e,%al
    16ae:	74 31                	je     16e1 <checkline_func+0x1ff>
    16b0:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    16b4:	0f b6 10             	movzbl (%rax),%edx
    16b7:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    16bb:	88 10                	mov    %dl,(%rax)
    16bd:	83 6d fc 01          	subl   $0x1,-0x4(%rbp)
    16c1:	48 83 45 f0 01       	addq   $0x1,-0x10(%rbp)
    16c6:	48 83 45 e8 01       	addq   $0x1,-0x18(%rbp)
    16cb:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    16cf:	0f b6 00             	movzbl (%rax),%eax
    16d2:	84 c0                	test   %al,%al
    16d4:	75 b3                	jne    1689 <checkline_func+0x1a7>
    16d6:	eb 0a                	jmp    16e2 <checkline_func+0x200>
    16d8:	90                   	nop
    16d9:	eb 07                	jmp    16e2 <checkline_func+0x200>
    16db:	90                   	nop
    16dc:	eb 04                	jmp    16e2 <checkline_func+0x200>
    16de:	90                   	nop
    16df:	eb 01                	jmp    16e2 <checkline_func+0x200>
    16e1:	90                   	nop
    16e2:	48 8d 3d d7 4d 00 00 	lea    0x4dd7(%rip),%rdi        # 64c0 <idbuf>
    16e9:	e8 d2 f9 ff ff       	callq  10c0 <strdup@plt>
    16ee:	48 89 05 e3 4e 00 00 	mov    %rax,0x4ee3(%rip)        # 65d8 <curfunc>
    16f5:	e8 81 08 00 00       	callq  1f7b <do_curfunc>
    16fa:	8b 05 d0 4e 00 00    	mov    0x4ed0(%rip),%eax        # 65d0 <nfunc>
    1700:	83 c0 01             	add    $0x1,%eax
    1703:	89 05 c7 4e 00 00    	mov    %eax,0x4ec7(%rip)        # 65d0 <nfunc>
    1709:	90                   	nop
    170a:	eb 1c                	jmp    1728 <checkline_func+0x246>
    170c:	90                   	nop
    170d:	eb 19                	jmp    1728 <checkline_func+0x246>
    170f:	90                   	nop
    1710:	eb 16                	jmp    1728 <checkline_func+0x246>
    1712:	90                   	nop
    1713:	eb 13                	jmp    1728 <checkline_func+0x246>
    1715:	90                   	nop
    1716:	eb 10                	jmp    1728 <checkline_func+0x246>
    1718:	90                   	nop
    1719:	eb 0d                	jmp    1728 <checkline_func+0x246>
    171b:	90                   	nop
    171c:	eb 0a                	jmp    1728 <checkline_func+0x246>
    171e:	90                   	nop
    171f:	eb 07                	jmp    1728 <checkline_func+0x246>
    1721:	90                   	nop
    1722:	eb 04                	jmp    1728 <checkline_func+0x246>
    1724:	90                   	nop
    1725:	eb 01                	jmp    1728 <checkline_func+0x246>
    1727:	90                   	nop
    1728:	c9                   	leaveq 
    1729:	c3                   	retq   

000000000000172a <checkline_callq>:
    172a:	55                   	push   %rbp
    172b:	48 89 e5             	mov    %rsp,%rbp
    172e:	48 83 ec 30          	sub    $0x30,%rsp
    1732:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    1736:	89 75 d4             	mov    %esi,-0x2c(%rbp)
    1739:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    1740:	00 
    1741:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    1748:	00 
    1749:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%rbp)
    1750:	48 8b 05 81 4e 00 00 	mov    0x4e81(%rip),%rax        # 65d8 <curfunc>
    1757:	48 85 c0             	test   %rax,%rax
    175a:	0f 84 60 01 00 00    	je     18c0 <checkline_callq+0x196>
    1760:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1764:	48 8d 35 27 2a 00 00 	lea    0x2a27(%rip),%rsi        # 4192 <_IO_stdin_used+0x192>
    176b:	48 89 c7             	mov    %rax,%rdi
    176e:	e8 5d f9 ff ff       	callq  10d0 <strstr@plt>
    1773:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1777:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    177c:	0f 85 41 01 00 00    	jne    18c3 <checkline_callq+0x199>
    1782:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1786:	48 8d 35 08 2a 00 00 	lea    0x2a08(%rip),%rsi        # 4195 <_IO_stdin_used+0x195>
    178d:	48 89 c7             	mov    %rax,%rdi
    1790:	e8 3b f9 ff ff       	callq  10d0 <strstr@plt>
    1795:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1799:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    179e:	0f 85 22 01 00 00    	jne    18c6 <checkline_callq+0x19c>
    17a4:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    17a8:	48 8d 35 eb 29 00 00 	lea    0x29eb(%rip),%rsi        # 419a <_IO_stdin_used+0x19a>
    17af:	48 89 c7             	mov    %rax,%rdi
    17b2:	e8 19 f9 ff ff       	callq  10d0 <strstr@plt>
    17b7:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    17bb:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    17c0:	0f 85 03 01 00 00    	jne    18c9 <checkline_callq+0x19f>
    17c6:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    17ca:	be 3c 00 00 00       	mov    $0x3c,%esi
    17cf:	48 89 c7             	mov    %rax,%rdi
    17d2:	e8 79 f8 ff ff       	callq  1050 <strchr@plt>
    17d7:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    17db:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    17e0:	0f 84 e6 00 00 00    	je     18cc <checkline_callq+0x1a2>
    17e6:	ba 00 01 00 00       	mov    $0x100,%edx
    17eb:	be 00 00 00 00       	mov    $0x0,%esi
    17f0:	48 8d 3d c9 4c 00 00 	lea    0x4cc9(%rip),%rdi        # 64c0 <idbuf>
    17f7:	e8 74 f8 ff ff       	callq  1070 <memset@plt>
    17fc:	48 83 45 f8 01       	addq   $0x1,-0x8(%rbp)
    1801:	48 8d 05 b8 4c 00 00 	lea    0x4cb8(%rip),%rax        # 64c0 <idbuf>
    1808:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    180c:	c7 45 ec ff 00 00 00 	movl   $0xff,-0x14(%rbp)
    1813:	eb 42                	jmp    1857 <checkline_callq+0x12d>
    1815:	83 7d ec 00          	cmpl   $0x0,-0x14(%rbp)
    1819:	74 49                	je     1864 <checkline_callq+0x13a>
    181b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    181f:	0f b6 00             	movzbl (%rax),%eax
    1822:	3c 3e                	cmp    $0x3e,%al
    1824:	74 41                	je     1867 <checkline_callq+0x13d>
    1826:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    182a:	0f b6 00             	movzbl (%rax),%eax
    182d:	3c 2b                	cmp    $0x2b,%al
    182f:	74 39                	je     186a <checkline_callq+0x140>
    1831:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1835:	0f b6 00             	movzbl (%rax),%eax
    1838:	3c 2e                	cmp    $0x2e,%al
    183a:	74 31                	je     186d <checkline_callq+0x143>
    183c:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1840:	0f b6 10             	movzbl (%rax),%edx
    1843:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1847:	88 10                	mov    %dl,(%rax)
    1849:	83 6d ec 01          	subl   $0x1,-0x14(%rbp)
    184d:	48 83 45 f8 01       	addq   $0x1,-0x8(%rbp)
    1852:	48 83 45 f0 01       	addq   $0x1,-0x10(%rbp)
    1857:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    185b:	0f b6 00             	movzbl (%rax),%eax
    185e:	84 c0                	test   %al,%al
    1860:	75 b3                	jne    1815 <checkline_callq+0xeb>
    1862:	eb 0a                	jmp    186e <checkline_callq+0x144>
    1864:	90                   	nop
    1865:	eb 07                	jmp    186e <checkline_callq+0x144>
    1867:	90                   	nop
    1868:	eb 04                	jmp    186e <checkline_callq+0x144>
    186a:	90                   	nop
    186b:	eb 01                	jmp    186e <checkline_callq+0x144>
    186d:	90                   	nop
    186e:	48 8d 05 4b 4c 00 00 	lea    0x4c4b(%rip),%rax        # 64c0 <idbuf>
    1875:	0f b6 00             	movzbl (%rax),%eax
    1878:	84 c0                	test   %al,%al
    187a:	74 53                	je     18cf <checkline_callq+0x1a5>
    187c:	48 8b 05 55 4d 00 00 	mov    0x4d55(%rip),%rax        # 65d8 <curfunc>
    1883:	48 89 c6             	mov    %rax,%rsi
    1886:	48 8d 3d 33 4c 00 00 	lea    0x4c33(%rip),%rdi        # 64c0 <idbuf>
    188d:	e8 fe f7 ff ff       	callq  1090 <strcmp@plt>
    1892:	85 c0                	test   %eax,%eax
    1894:	74 3c                	je     18d2 <checkline_callq+0x1a8>
    1896:	48 8d 3d 23 4c 00 00 	lea    0x4c23(%rip),%rdi        # 64c0 <idbuf>
    189d:	e8 1e f8 ff ff       	callq  10c0 <strdup@plt>
    18a2:	48 89 05 37 4d 00 00 	mov    %rax,0x4d37(%rip)        # 65e0 <curcallq>
    18a9:	e8 c7 07 00 00       	callq  2075 <do_curcallq>
    18ae:	8b 05 10 4d 00 00    	mov    0x4d10(%rip),%eax        # 65c4 <ncalls>
    18b4:	83 c0 01             	add    $0x1,%eax
    18b7:	89 05 07 4d 00 00    	mov    %eax,0x4d07(%rip)        # 65c4 <ncalls>
    18bd:	90                   	nop
    18be:	eb 13                	jmp    18d3 <checkline_callq+0x1a9>
    18c0:	90                   	nop
    18c1:	eb 10                	jmp    18d3 <checkline_callq+0x1a9>
    18c3:	90                   	nop
    18c4:	eb 0d                	jmp    18d3 <checkline_callq+0x1a9>
    18c6:	90                   	nop
    18c7:	eb 0a                	jmp    18d3 <checkline_callq+0x1a9>
    18c9:	90                   	nop
    18ca:	eb 07                	jmp    18d3 <checkline_callq+0x1a9>
    18cc:	90                   	nop
    18cd:	eb 04                	jmp    18d3 <checkline_callq+0x1a9>
    18cf:	90                   	nop
    18d0:	eb 01                	jmp    18d3 <checkline_callq+0x1a9>
    18d2:	90                   	nop
    18d3:	c9                   	leaveq 
    18d4:	c3                   	retq   

00000000000018d5 <checkline_jmpq>:
    18d5:	55                   	push   %rbp
    18d6:	48 89 e5             	mov    %rsp,%rbp
    18d9:	48 83 ec 30          	sub    $0x30,%rsp
    18dd:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    18e1:	89 75 d4             	mov    %esi,-0x2c(%rbp)
    18e4:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    18eb:	00 
    18ec:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    18f3:	00 
    18f4:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%rbp)
    18fb:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    18ff:	48 8d 35 8c 28 00 00 	lea    0x288c(%rip),%rsi        # 4192 <_IO_stdin_used+0x192>
    1906:	48 89 c7             	mov    %rax,%rdi
    1909:	e8 c2 f7 ff ff       	callq  10d0 <strstr@plt>
    190e:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1912:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1917:	0f 85 52 01 00 00    	jne    1a6f <checkline_jmpq+0x19a>
    191d:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1921:	48 8d 35 6d 28 00 00 	lea    0x286d(%rip),%rsi        # 4195 <_IO_stdin_used+0x195>
    1928:	48 89 c7             	mov    %rax,%rdi
    192b:	e8 a0 f7 ff ff       	callq  10d0 <strstr@plt>
    1930:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1934:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1939:	0f 85 33 01 00 00    	jne    1a72 <checkline_jmpq+0x19d>
    193f:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1943:	48 8d 35 50 28 00 00 	lea    0x2850(%rip),%rsi        # 419a <_IO_stdin_used+0x19a>
    194a:	48 89 c7             	mov    %rax,%rdi
    194d:	e8 7e f7 ff ff       	callq  10d0 <strstr@plt>
    1952:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1956:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    195b:	0f 85 14 01 00 00    	jne    1a75 <checkline_jmpq+0x1a0>
    1961:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1965:	48 8d 35 36 28 00 00 	lea    0x2836(%rip),%rsi        # 41a2 <_IO_stdin_used+0x1a2>
    196c:	48 89 c7             	mov    %rax,%rdi
    196f:	e8 5c f7 ff ff       	callq  10d0 <strstr@plt>
    1974:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1978:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    197d:	0f 85 f5 00 00 00    	jne    1a78 <checkline_jmpq+0x1a3>
    1983:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1987:	be 3c 00 00 00       	mov    $0x3c,%esi
    198c:	48 89 c7             	mov    %rax,%rdi
    198f:	e8 bc f6 ff ff       	callq  1050 <strchr@plt>
    1994:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1998:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    199d:	0f 84 d8 00 00 00    	je     1a7b <checkline_jmpq+0x1a6>
    19a3:	ba 00 01 00 00       	mov    $0x100,%edx
    19a8:	be 00 00 00 00       	mov    $0x0,%esi
    19ad:	48 8d 3d 0c 4b 00 00 	lea    0x4b0c(%rip),%rdi        # 64c0 <idbuf>
    19b4:	e8 b7 f6 ff ff       	callq  1070 <memset@plt>
    19b9:	48 83 45 f8 01       	addq   $0x1,-0x8(%rbp)
    19be:	48 8d 05 fb 4a 00 00 	lea    0x4afb(%rip),%rax        # 64c0 <idbuf>
    19c5:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    19c9:	c7 45 ec ff 00 00 00 	movl   $0xff,-0x14(%rbp)
    19d0:	eb 42                	jmp    1a14 <checkline_jmpq+0x13f>
    19d2:	83 7d ec 00          	cmpl   $0x0,-0x14(%rbp)
    19d6:	74 49                	je     1a21 <checkline_jmpq+0x14c>
    19d8:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    19dc:	0f b6 00             	movzbl (%rax),%eax
    19df:	3c 3e                	cmp    $0x3e,%al
    19e1:	74 41                	je     1a24 <checkline_jmpq+0x14f>
    19e3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    19e7:	0f b6 00             	movzbl (%rax),%eax
    19ea:	3c 2b                	cmp    $0x2b,%al
    19ec:	74 39                	je     1a27 <checkline_jmpq+0x152>
    19ee:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    19f2:	0f b6 00             	movzbl (%rax),%eax
    19f5:	3c 2e                	cmp    $0x2e,%al
    19f7:	74 31                	je     1a2a <checkline_jmpq+0x155>
    19f9:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    19fd:	0f b6 10             	movzbl (%rax),%edx
    1a00:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1a04:	88 10                	mov    %dl,(%rax)
    1a06:	83 6d ec 01          	subl   $0x1,-0x14(%rbp)
    1a0a:	48 83 45 f8 01       	addq   $0x1,-0x8(%rbp)
    1a0f:	48 83 45 f0 01       	addq   $0x1,-0x10(%rbp)
    1a14:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1a18:	0f b6 00             	movzbl (%rax),%eax
    1a1b:	84 c0                	test   %al,%al
    1a1d:	75 b3                	jne    19d2 <checkline_jmpq+0xfd>
    1a1f:	eb 0a                	jmp    1a2b <checkline_jmpq+0x156>
    1a21:	90                   	nop
    1a22:	eb 07                	jmp    1a2b <checkline_jmpq+0x156>
    1a24:	90                   	nop
    1a25:	eb 04                	jmp    1a2b <checkline_jmpq+0x156>
    1a27:	90                   	nop
    1a28:	eb 01                	jmp    1a2b <checkline_jmpq+0x156>
    1a2a:	90                   	nop
    1a2b:	48 8b 05 a6 4b 00 00 	mov    0x4ba6(%rip),%rax        # 65d8 <curfunc>
    1a32:	48 89 c6             	mov    %rax,%rsi
    1a35:	48 8d 3d 84 4a 00 00 	lea    0x4a84(%rip),%rdi        # 64c0 <idbuf>
    1a3c:	e8 4f f6 ff ff       	callq  1090 <strcmp@plt>
    1a41:	85 c0                	test   %eax,%eax
    1a43:	74 39                	je     1a7e <checkline_jmpq+0x1a9>
    1a45:	48 8d 3d 74 4a 00 00 	lea    0x4a74(%rip),%rdi        # 64c0 <idbuf>
    1a4c:	e8 6f f6 ff ff       	callq  10c0 <strdup@plt>
    1a51:	48 89 05 88 4b 00 00 	mov    %rax,0x4b88(%rip)        # 65e0 <curcallq>
    1a58:	e8 18 06 00 00       	callq  2075 <do_curcallq>
    1a5d:	8b 05 65 4b 00 00    	mov    0x4b65(%rip),%eax        # 65c8 <njmps>
    1a63:	83 c0 01             	add    $0x1,%eax
    1a66:	89 05 5c 4b 00 00    	mov    %eax,0x4b5c(%rip)        # 65c8 <njmps>
    1a6c:	90                   	nop
    1a6d:	eb 10                	jmp    1a7f <checkline_jmpq+0x1aa>
    1a6f:	90                   	nop
    1a70:	eb 0d                	jmp    1a7f <checkline_jmpq+0x1aa>
    1a72:	90                   	nop
    1a73:	eb 0a                	jmp    1a7f <checkline_jmpq+0x1aa>
    1a75:	90                   	nop
    1a76:	eb 07                	jmp    1a7f <checkline_jmpq+0x1aa>
    1a78:	90                   	nop
    1a79:	eb 04                	jmp    1a7f <checkline_jmpq+0x1aa>
    1a7b:	90                   	nop
    1a7c:	eb 01                	jmp    1a7f <checkline_jmpq+0x1aa>
    1a7e:	90                   	nop
    1a7f:	c9                   	leaveq 
    1a80:	c3                   	retq   

0000000000001a81 <checkline_usage>:
    1a81:	55                   	push   %rbp
    1a82:	48 89 e5             	mov    %rsp,%rbp
    1a85:	48 83 ec 30          	sub    $0x30,%rsp
    1a89:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    1a8d:	89 75 d4             	mov    %esi,-0x2c(%rbp)
    1a90:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    1a97:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    1a9e:	00 
    1a9f:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    1aa6:	00 
    1aa7:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1aab:	48 8d 35 03 27 00 00 	lea    0x2703(%rip),%rsi        # 41b5 <_IO_stdin_used+0x1b5>
    1ab2:	48 89 c7             	mov    %rax,%rdi
    1ab5:	e8 16 f6 ff ff       	callq  10d0 <strstr@plt>
    1aba:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1abe:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1ac3:	0f 84 bc 01 00 00    	je     1c85 <checkline_usage+0x204>
    1ac9:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1acd:	be 3c 00 00 00       	mov    $0x3c,%esi
    1ad2:	48 89 c7             	mov    %rax,%rdi
    1ad5:	e8 76 f5 ff ff       	callq  1050 <strchr@plt>
    1ada:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1ade:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1ae3:	0f 84 9c 01 00 00    	je     1c85 <checkline_usage+0x204>
    1ae9:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1aed:	48 8d 35 c4 26 00 00 	lea    0x26c4(%rip),%rsi        # 41b8 <_IO_stdin_used+0x1b8>
    1af4:	48 89 c7             	mov    %rax,%rdi
    1af7:	e8 d4 f5 ff ff       	callq  10d0 <strstr@plt>
    1afc:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1b00:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1b05:	0f 85 7d 01 00 00    	jne    1c88 <checkline_usage+0x207>
    1b0b:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1b0f:	48 8d 35 af 26 00 00 	lea    0x26af(%rip),%rsi        # 41c5 <_IO_stdin_used+0x1c5>
    1b16:	48 89 c7             	mov    %rax,%rdi
    1b19:	e8 b2 f5 ff ff       	callq  10d0 <strstr@plt>
    1b1e:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1b22:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1b27:	0f 85 5e 01 00 00    	jne    1c8b <checkline_usage+0x20a>
    1b2d:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1b31:	48 8d 35 96 26 00 00 	lea    0x2696(%rip),%rsi        # 41ce <_IO_stdin_used+0x1ce>
    1b38:	48 89 c7             	mov    %rax,%rdi
    1b3b:	e8 90 f5 ff ff       	callq  10d0 <strstr@plt>
    1b40:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1b44:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1b49:	0f 85 3f 01 00 00    	jne    1c8e <checkline_usage+0x20d>
    1b4f:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1b53:	48 8d 35 38 26 00 00 	lea    0x2638(%rip),%rsi        # 4192 <_IO_stdin_used+0x192>
    1b5a:	48 89 c7             	mov    %rax,%rdi
    1b5d:	e8 6e f5 ff ff       	callq  10d0 <strstr@plt>
    1b62:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1b66:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1b6b:	0f 85 20 01 00 00    	jne    1c91 <checkline_usage+0x210>
    1b71:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1b75:	48 8d 35 5e 26 00 00 	lea    0x265e(%rip),%rsi        # 41da <_IO_stdin_used+0x1da>
    1b7c:	48 89 c7             	mov    %rax,%rdi
    1b7f:	e8 4c f5 ff ff       	callq  10d0 <strstr@plt>
    1b84:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1b88:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1b8d:	0f 85 01 01 00 00    	jne    1c94 <checkline_usage+0x213>
    1b93:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1b97:	48 8d 35 49 26 00 00 	lea    0x2649(%rip),%rsi        # 41e7 <_IO_stdin_used+0x1e7>
    1b9e:	48 89 c7             	mov    %rax,%rdi
    1ba1:	e8 2a f5 ff ff       	callq  10d0 <strstr@plt>
    1ba6:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1baa:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1baf:	0f 85 e2 00 00 00    	jne    1c97 <checkline_usage+0x216>
    1bb5:	ba 00 01 00 00       	mov    $0x100,%edx
    1bba:	be 00 00 00 00       	mov    $0x0,%esi
    1bbf:	48 8d 3d fa 48 00 00 	lea    0x48fa(%rip),%rdi        # 64c0 <idbuf>
    1bc6:	e8 a5 f4 ff ff       	callq  1070 <memset@plt>
    1bcb:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    1bcf:	be 3c 00 00 00       	mov    $0x3c,%esi
    1bd4:	48 89 c7             	mov    %rax,%rdi
    1bd7:	e8 74 f4 ff ff       	callq  1050 <strchr@plt>
    1bdc:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1be0:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1be5:	0f 84 af 00 00 00    	je     1c9a <checkline_usage+0x219>
    1beb:	48 83 45 f0 01       	addq   $0x1,-0x10(%rbp)
    1bf0:	48 8d 05 c9 48 00 00 	lea    0x48c9(%rip),%rax        # 64c0 <idbuf>
    1bf7:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    1bfb:	c7 45 fc ff 00 00 00 	movl   $0xff,-0x4(%rbp)
    1c02:	eb 42                	jmp    1c46 <checkline_usage+0x1c5>
    1c04:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    1c08:	74 49                	je     1c53 <checkline_usage+0x1d2>
    1c0a:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1c0e:	0f b6 00             	movzbl (%rax),%eax
    1c11:	3c 3e                	cmp    $0x3e,%al
    1c13:	74 41                	je     1c56 <checkline_usage+0x1d5>
    1c15:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1c19:	0f b6 00             	movzbl (%rax),%eax
    1c1c:	3c 2b                	cmp    $0x2b,%al
    1c1e:	74 39                	je     1c59 <checkline_usage+0x1d8>
    1c20:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1c24:	0f b6 00             	movzbl (%rax),%eax
    1c27:	3c 2e                	cmp    $0x2e,%al
    1c29:	74 31                	je     1c5c <checkline_usage+0x1db>
    1c2b:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1c2f:	0f b6 10             	movzbl (%rax),%edx
    1c32:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1c36:	88 10                	mov    %dl,(%rax)
    1c38:	83 6d fc 01          	subl   $0x1,-0x4(%rbp)
    1c3c:	48 83 45 f0 01       	addq   $0x1,-0x10(%rbp)
    1c41:	48 83 45 e8 01       	addq   $0x1,-0x18(%rbp)
    1c46:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1c4a:	0f b6 00             	movzbl (%rax),%eax
    1c4d:	84 c0                	test   %al,%al
    1c4f:	75 b3                	jne    1c04 <checkline_usage+0x183>
    1c51:	eb 0a                	jmp    1c5d <checkline_usage+0x1dc>
    1c53:	90                   	nop
    1c54:	eb 07                	jmp    1c5d <checkline_usage+0x1dc>
    1c56:	90                   	nop
    1c57:	eb 04                	jmp    1c5d <checkline_usage+0x1dc>
    1c59:	90                   	nop
    1c5a:	eb 01                	jmp    1c5d <checkline_usage+0x1dc>
    1c5c:	90                   	nop
    1c5d:	48 8d 3d 5c 48 00 00 	lea    0x485c(%rip),%rdi        # 64c0 <idbuf>
    1c64:	e8 57 f4 ff ff       	callq  10c0 <strdup@plt>
    1c69:	48 89 05 78 49 00 00 	mov    %rax,0x4978(%rip)        # 65e8 <curuse>
    1c70:	e8 9f 00 00 00       	callq  1d14 <do_curuse>
    1c75:	8b 05 51 49 00 00    	mov    0x4951(%rip),%eax        # 65cc <nusage>
    1c7b:	83 c0 01             	add    $0x1,%eax
    1c7e:	89 05 48 49 00 00    	mov    %eax,0x4948(%rip)        # 65cc <nusage>
    1c84:	90                   	nop
    1c85:	90                   	nop
    1c86:	eb 13                	jmp    1c9b <checkline_usage+0x21a>
    1c88:	90                   	nop
    1c89:	eb 10                	jmp    1c9b <checkline_usage+0x21a>
    1c8b:	90                   	nop
    1c8c:	eb 0d                	jmp    1c9b <checkline_usage+0x21a>
    1c8e:	90                   	nop
    1c8f:	eb 0a                	jmp    1c9b <checkline_usage+0x21a>
    1c91:	90                   	nop
    1c92:	eb 07                	jmp    1c9b <checkline_usage+0x21a>
    1c94:	90                   	nop
    1c95:	eb 04                	jmp    1c9b <checkline_usage+0x21a>
    1c97:	90                   	nop
    1c98:	eb 01                	jmp    1c9b <checkline_usage+0x21a>
    1c9a:	90                   	nop
    1c9b:	c9                   	leaveq 
    1c9c:	c3                   	retq   

0000000000001c9d <mymalloc>:
    1c9d:	55                   	push   %rbp
    1c9e:	48 89 e5             	mov    %rsp,%rbp
    1ca1:	48 83 ec 30          	sub    $0x30,%rsp
    1ca5:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    1ca9:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    1cad:	89 55 dc             	mov    %edx,-0x24(%rbp)
    1cb0:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    1cb7:	00 
    1cb8:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1cbc:	48 89 c7             	mov    %rax,%rdi
    1cbf:	e8 dc f3 ff ff       	callq  10a0 <malloc@plt>
    1cc4:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1cc8:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1ccd:	74 15                	je     1ce4 <mymalloc+0x47>
    1ccf:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    1cd3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1cd7:	be 00 00 00 00       	mov    $0x0,%esi
    1cdc:	48 89 c7             	mov    %rax,%rdi
    1cdf:	e8 8c f3 ff ff       	callq  1070 <memset@plt>
    1ce4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1ce8:	c9                   	leaveq 
    1ce9:	c3                   	retq   

0000000000001cea <myfree>:
    1cea:	55                   	push   %rbp
    1ceb:	48 89 e5             	mov    %rsp,%rbp
    1cee:	48 83 ec 20          	sub    $0x20,%rsp
    1cf2:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1cf6:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    1cfa:	89 55 ec             	mov    %edx,-0x14(%rbp)
    1cfd:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1d02:	74 0d                	je     1d11 <myfree+0x27>
    1d04:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1d08:	48 89 c7             	mov    %rax,%rdi
    1d0b:	e8 20 f3 ff ff       	callq  1030 <free@plt>
    1d10:	90                   	nop
    1d11:	90                   	nop
    1d12:	c9                   	leaveq 
    1d13:	c3                   	retq   

0000000000001d14 <do_curuse>:
    1d14:	55                   	push   %rbp
    1d15:	48 89 e5             	mov    %rsp,%rbp
    1d18:	48 83 ec 20          	sub    $0x20,%rsp
    1d1c:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    1d23:	00 
    1d24:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    1d2b:	00 
    1d2c:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    1d33:	00 
    1d34:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%rbp)
    1d3b:	48 8b 05 6e 43 00 00 	mov    0x436e(%rip),%rax        # 60b0 <usetree>
    1d42:	48 85 c0             	test   %rax,%rax
    1d45:	75 1d                	jne    1d64 <do_curuse+0x50>
    1d47:	ba 00 00 00 00       	mov    $0x0,%edx
    1d4c:	be 00 00 00 00       	mov    $0x0,%esi
    1d51:	48 8d 3d e6 1a 00 00 	lea    0x1ae6(%rip),%rdi        # 383e <splay_tree_compare_strings>
    1d58:	e8 b1 0f 00 00       	callq  2d0e <splay_tree_new>
    1d5d:	48 89 05 4c 43 00 00 	mov    %rax,0x434c(%rip)        # 60b0 <usetree>
    1d64:	48 8b 05 7d 48 00 00 	mov    0x487d(%rip),%rax        # 65e8 <curuse>
    1d6b:	48 89 c2             	mov    %rax,%rdx
    1d6e:	48 8b 05 3b 43 00 00 	mov    0x433b(%rip),%rax        # 60b0 <usetree>
    1d75:	48 89 d6             	mov    %rdx,%rsi
    1d78:	48 89 c7             	mov    %rax,%rdi
    1d7b:	e8 26 15 00 00       	callq  32a6 <splay_tree_lookup>
    1d80:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1d84:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1d89:	75 21                	jne    1dac <do_curuse+0x98>
    1d8b:	48 8b 05 56 48 00 00 	mov    0x4856(%rip),%rax        # 65e8 <curuse>
    1d92:	48 89 c1             	mov    %rax,%rcx
    1d95:	48 8b 05 14 43 00 00 	mov    0x4314(%rip),%rax        # 60b0 <usetree>
    1d9c:	ba 00 00 00 00       	mov    $0x0,%edx
    1da1:	48 89 ce             	mov    %rcx,%rsi
    1da4:	48 89 c7             	mov    %rax,%rdi
    1da7:	e8 73 10 00 00       	callq  2e1f <splay_tree_insert>
    1dac:	48 8b 05 35 48 00 00 	mov    0x4835(%rip),%rax        # 65e8 <curuse>
    1db3:	48 89 c2             	mov    %rax,%rdx
    1db6:	48 8b 05 f3 42 00 00 	mov    0x42f3(%rip),%rax        # 60b0 <usetree>
    1dbd:	48 89 d6             	mov    %rdx,%rsi
    1dc0:	48 89 c7             	mov    %rax,%rdi
    1dc3:	e8 de 14 00 00       	callq  32a6 <splay_tree_lookup>
    1dc8:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1dcc:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1dd1:	0f 84 da 00 00 00    	je     1eb1 <do_curuse+0x19d>
    1dd7:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1ddb:	48 8b 40 08          	mov    0x8(%rax),%rax
    1ddf:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1de3:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1de8:	74 78                	je     1e62 <do_curuse+0x14e>
    1dea:	48 8b 05 e7 47 00 00 	mov    0x47e7(%rip),%rax        # 65d8 <curfunc>
    1df1:	48 89 c2             	mov    %rax,%rdx
    1df4:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1df8:	48 8b 40 08          	mov    0x8(%rax),%rax
    1dfc:	48 89 d6             	mov    %rdx,%rsi
    1dff:	48 89 c7             	mov    %rax,%rdi
    1e02:	e8 9f 14 00 00       	callq  32a6 <splay_tree_lookup>
    1e07:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    1e0b:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    1e10:	74 22                	je     1e34 <do_curuse+0x120>
    1e12:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1e16:	48 8b 40 08          	mov    0x8(%rax),%rax
    1e1a:	89 45 e4             	mov    %eax,-0x1c(%rbp)
    1e1d:	83 45 e4 01          	addl   $0x1,-0x1c(%rbp)
    1e21:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    1e24:	48 63 d0             	movslq %eax,%rdx
    1e27:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    1e2b:	48 89 50 08          	mov    %rdx,0x8(%rax)
    1e2f:	e9 89 00 00 00       	jmpq   1ebd <do_curuse+0x1a9>
    1e34:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%rbp)
    1e3b:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    1e3e:	48 98                	cltq   
    1e40:	48 8b 15 91 47 00 00 	mov    0x4791(%rip),%rdx        # 65d8 <curfunc>
    1e47:	48 89 d6             	mov    %rdx,%rsi
    1e4a:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    1e4e:	48 8b 52 08          	mov    0x8(%rdx),%rdx
    1e52:	48 89 d1             	mov    %rdx,%rcx
    1e55:	48 89 c2             	mov    %rax,%rdx
    1e58:	48 89 cf             	mov    %rcx,%rdi
    1e5b:	e8 bf 0f 00 00       	callq  2e1f <splay_tree_insert>
    1e60:	eb 5b                	jmp    1ebd <do_curuse+0x1a9>
    1e62:	ba 00 00 00 00       	mov    $0x0,%edx
    1e67:	be 00 00 00 00       	mov    $0x0,%esi
    1e6c:	48 8d 3d cb 19 00 00 	lea    0x19cb(%rip),%rdi        # 383e <splay_tree_compare_strings>
    1e73:	e8 96 0e 00 00       	callq  2d0e <splay_tree_new>
    1e78:	48 89 c2             	mov    %rax,%rdx
    1e7b:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1e7f:	48 89 50 08          	mov    %rdx,0x8(%rax)
    1e83:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%rbp)
    1e8a:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    1e8d:	48 98                	cltq   
    1e8f:	48 8b 15 42 47 00 00 	mov    0x4742(%rip),%rdx        # 65d8 <curfunc>
    1e96:	48 89 d6             	mov    %rdx,%rsi
    1e99:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    1e9d:	48 8b 52 08          	mov    0x8(%rdx),%rdx
    1ea1:	48 89 d1             	mov    %rdx,%rcx
    1ea4:	48 89 c2             	mov    %rax,%rdx
    1ea7:	48 89 cf             	mov    %rcx,%rdi
    1eaa:	e8 70 0f 00 00       	callq  2e1f <splay_tree_insert>
    1eaf:	eb 0c                	jmp    1ebd <do_curuse+0x1a9>
    1eb1:	48 8d 3d 3b 23 00 00 	lea    0x233b(%rip),%rdi        # 41f3 <_IO_stdin_used+0x1f3>
    1eb8:	e8 83 f1 ff ff       	callq  1040 <puts@plt>
    1ebd:	48 8b 05 f4 41 00 00 	mov    0x41f4(%rip),%rax        # 60b8 <usetreec>
    1ec4:	48 85 c0             	test   %rax,%rax
    1ec7:	75 1d                	jne    1ee6 <do_curuse+0x1d2>
    1ec9:	ba 00 00 00 00       	mov    $0x0,%edx
    1ece:	be 00 00 00 00       	mov    $0x0,%esi
    1ed3:	48 8d 3d 64 19 00 00 	lea    0x1964(%rip),%rdi        # 383e <splay_tree_compare_strings>
    1eda:	e8 2f 0e 00 00       	callq  2d0e <splay_tree_new>
    1edf:	48 89 05 d2 41 00 00 	mov    %rax,0x41d2(%rip)        # 60b8 <usetreec>
    1ee6:	48 8b 05 fb 46 00 00 	mov    0x46fb(%rip),%rax        # 65e8 <curuse>
    1eed:	48 89 c2             	mov    %rax,%rdx
    1ef0:	48 8b 05 c1 41 00 00 	mov    0x41c1(%rip),%rax        # 60b8 <usetreec>
    1ef7:	48 89 d6             	mov    %rdx,%rsi
    1efa:	48 89 c7             	mov    %rax,%rdi
    1efd:	e8 a4 13 00 00       	callq  32a6 <splay_tree_lookup>
    1f02:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    1f06:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1f0b:	74 1f                	je     1f2c <do_curuse+0x218>
    1f0d:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1f11:	48 8b 40 08          	mov    0x8(%rax),%rax
    1f15:	89 45 e4             	mov    %eax,-0x1c(%rbp)
    1f18:	83 45 e4 01          	addl   $0x1,-0x1c(%rbp)
    1f1c:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    1f1f:	48 63 d0             	movslq %eax,%rdx
    1f22:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    1f26:	48 89 50 08          	mov    %rdx,0x8(%rax)
    1f2a:	eb 2a                	jmp    1f56 <do_curuse+0x242>
    1f2c:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%rbp)
    1f33:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    1f36:	48 63 d0             	movslq %eax,%rdx
    1f39:	48 8b 05 a8 46 00 00 	mov    0x46a8(%rip),%rax        # 65e8 <curuse>
    1f40:	48 89 c1             	mov    %rax,%rcx
    1f43:	48 8b 05 6e 41 00 00 	mov    0x416e(%rip),%rax        # 60b8 <usetreec>
    1f4a:	48 89 ce             	mov    %rcx,%rsi
    1f4d:	48 89 c7             	mov    %rax,%rdi
    1f50:	e8 ca 0e 00 00       	callq  2e1f <splay_tree_insert>
    1f55:	90                   	nop
    1f56:	c9                   	leaveq 
    1f57:	c3                   	retq   

0000000000001f58 <do_func_free_value>:
    1f58:	55                   	push   %rbp
    1f59:	48 89 e5             	mov    %rsp,%rbp
    1f5c:	48 83 ec 10          	sub    $0x10,%rsp
    1f60:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1f64:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1f69:	74 0d                	je     1f78 <do_func_free_value+0x20>
    1f6b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1f6f:	48 89 c7             	mov    %rax,%rdi
    1f72:	e8 1e 0e 00 00       	callq  2d95 <splay_tree_delete>
    1f77:	90                   	nop
    1f78:	90                   	nop
    1f79:	c9                   	leaveq 
    1f7a:	c3                   	retq   

0000000000001f7b <do_curfunc>:
    1f7b:	55                   	push   %rbp
    1f7c:	48 89 e5             	mov    %rsp,%rbp
    1f7f:	48 83 ec 10          	sub    $0x10,%rsp
    1f83:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    1f8a:	00 
    1f8b:	48 8b 05 0e 41 00 00 	mov    0x410e(%rip),%rax        # 60a0 <functree>
    1f92:	48 85 c0             	test   %rax,%rax
    1f95:	75 21                	jne    1fb8 <do_curfunc+0x3d>
    1f97:	48 8d 15 ba ff ff ff 	lea    -0x46(%rip),%rdx        # 1f58 <do_func_free_value>
    1f9e:	48 8d 35 dd 17 00 00 	lea    0x17dd(%rip),%rsi        # 3782 <splay_tree_free_key>
    1fa5:	48 8d 3d 92 18 00 00 	lea    0x1892(%rip),%rdi        # 383e <splay_tree_compare_strings>
    1fac:	e8 5d 0d 00 00       	callq  2d0e <splay_tree_new>
    1fb1:	48 89 05 e8 40 00 00 	mov    %rax,0x40e8(%rip)        # 60a0 <functree>
    1fb8:	48 8b 05 19 46 00 00 	mov    0x4619(%rip),%rax        # 65d8 <curfunc>
    1fbf:	48 89 c2             	mov    %rax,%rdx
    1fc2:	48 8b 05 d7 40 00 00 	mov    0x40d7(%rip),%rax        # 60a0 <functree>
    1fc9:	48 89 d6             	mov    %rdx,%rsi
    1fcc:	48 89 c7             	mov    %rax,%rdi
    1fcf:	e8 d2 12 00 00       	callq  32a6 <splay_tree_lookup>
    1fd4:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1fd8:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    1fdd:	75 21                	jne    2000 <do_curfunc+0x85>
    1fdf:	48 8b 05 f2 45 00 00 	mov    0x45f2(%rip),%rax        # 65d8 <curfunc>
    1fe6:	48 89 c1             	mov    %rax,%rcx
    1fe9:	48 8b 05 b0 40 00 00 	mov    0x40b0(%rip),%rax        # 60a0 <functree>
    1ff0:	ba 00 00 00 00       	mov    $0x0,%edx
    1ff5:	48 89 ce             	mov    %rcx,%rsi
    1ff8:	48 89 c7             	mov    %rax,%rdi
    1ffb:	e8 1f 0e 00 00       	callq  2e1f <splay_tree_insert>
    2000:	48 8b 05 a1 40 00 00 	mov    0x40a1(%rip),%rax        # 60a8 <functreec>
    2007:	48 85 c0             	test   %rax,%rax
    200a:	75 1d                	jne    2029 <do_curfunc+0xae>
    200c:	ba 00 00 00 00       	mov    $0x0,%edx
    2011:	be 00 00 00 00       	mov    $0x0,%esi
    2016:	48 8d 3d 21 18 00 00 	lea    0x1821(%rip),%rdi        # 383e <splay_tree_compare_strings>
    201d:	e8 ec 0c 00 00       	callq  2d0e <splay_tree_new>
    2022:	48 89 05 7f 40 00 00 	mov    %rax,0x407f(%rip)        # 60a8 <functreec>
    2029:	48 8b 05 a8 45 00 00 	mov    0x45a8(%rip),%rax        # 65d8 <curfunc>
    2030:	48 89 c2             	mov    %rax,%rdx
    2033:	48 8b 05 6e 40 00 00 	mov    0x406e(%rip),%rax        # 60a8 <functreec>
    203a:	48 89 d6             	mov    %rdx,%rsi
    203d:	48 89 c7             	mov    %rax,%rdi
    2040:	e8 61 12 00 00       	callq  32a6 <splay_tree_lookup>
    2045:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2049:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    204e:	75 22                	jne    2072 <do_curfunc+0xf7>
    2050:	48 8b 05 81 45 00 00 	mov    0x4581(%rip),%rax        # 65d8 <curfunc>
    2057:	48 89 c1             	mov    %rax,%rcx
    205a:	48 8b 05 47 40 00 00 	mov    0x4047(%rip),%rax        # 60a8 <functreec>
    2061:	ba 00 00 00 00       	mov    $0x0,%edx
    2066:	48 89 ce             	mov    %rcx,%rsi
    2069:	48 89 c7             	mov    %rax,%rdi
    206c:	e8 ae 0d 00 00       	callq  2e1f <splay_tree_insert>
    2071:	90                   	nop
    2072:	90                   	nop
    2073:	c9                   	leaveq 
    2074:	c3                   	retq   

0000000000002075 <do_curcallq>:
    2075:	55                   	push   %rbp
    2076:	48 89 e5             	mov    %rsp,%rbp
    2079:	48 83 ec 20          	sub    $0x20,%rsp
    207d:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    2084:	00 
    2085:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    208c:	00 
    208d:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    2094:	00 
    2095:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%rbp)
    209c:	48 8b 05 3d 45 00 00 	mov    0x453d(%rip),%rax        # 65e0 <curcallq>
    20a3:	48 89 c2             	mov    %rax,%rdx
    20a6:	48 8b 05 fb 3f 00 00 	mov    0x3ffb(%rip),%rax        # 60a8 <functreec>
    20ad:	48 89 d6             	mov    %rdx,%rsi
    20b0:	48 89 c7             	mov    %rax,%rdi
    20b3:	e8 ee 11 00 00       	callq  32a6 <splay_tree_lookup>
    20b8:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    20bc:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    20c1:	74 1f                	je     20e2 <do_curcallq+0x6d>
    20c3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    20c7:	48 8b 40 08          	mov    0x8(%rax),%rax
    20cb:	89 45 e4             	mov    %eax,-0x1c(%rbp)
    20ce:	83 45 e4 01          	addl   $0x1,-0x1c(%rbp)
    20d2:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    20d5:	48 63 d0             	movslq %eax,%rdx
    20d8:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    20dc:	48 89 50 08          	mov    %rdx,0x8(%rax)
    20e0:	eb 52                	jmp    2134 <do_curcallq+0xbf>
    20e2:	48 8b 05 bf 3f 00 00 	mov    0x3fbf(%rip),%rax        # 60a8 <functreec>
    20e9:	48 85 c0             	test   %rax,%rax
    20ec:	75 1d                	jne    210b <do_curcallq+0x96>
    20ee:	ba 00 00 00 00       	mov    $0x0,%edx
    20f3:	be 00 00 00 00       	mov    $0x0,%esi
    20f8:	48 8d 3d 3f 17 00 00 	lea    0x173f(%rip),%rdi        # 383e <splay_tree_compare_strings>
    20ff:	e8 0a 0c 00 00       	callq  2d0e <splay_tree_new>
    2104:	48 89 05 9d 3f 00 00 	mov    %rax,0x3f9d(%rip)        # 60a8 <functreec>
    210b:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%rbp)
    2112:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    2115:	48 63 d0             	movslq %eax,%rdx
    2118:	48 8b 05 c1 44 00 00 	mov    0x44c1(%rip),%rax        # 65e0 <curcallq>
    211f:	48 89 c1             	mov    %rax,%rcx
    2122:	48 8b 05 7f 3f 00 00 	mov    0x3f7f(%rip),%rax        # 60a8 <functreec>
    2129:	48 89 ce             	mov    %rcx,%rsi
    212c:	48 89 c7             	mov    %rax,%rdi
    212f:	e8 eb 0c 00 00       	callq  2e1f <splay_tree_insert>
    2134:	48 8b 05 9d 44 00 00 	mov    0x449d(%rip),%rax        # 65d8 <curfunc>
    213b:	48 89 c2             	mov    %rax,%rdx
    213e:	48 8b 05 5b 3f 00 00 	mov    0x3f5b(%rip),%rax        # 60a0 <functree>
    2145:	48 89 d6             	mov    %rdx,%rsi
    2148:	48 89 c7             	mov    %rax,%rdi
    214b:	e8 56 11 00 00       	callq  32a6 <splay_tree_lookup>
    2150:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2154:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2159:	75 11                	jne    216c <do_curcallq+0xf7>
    215b:	48 8d 3d a2 20 00 00 	lea    0x20a2(%rip),%rdi        # 4204 <_IO_stdin_used+0x204>
    2162:	e8 d9 ee ff ff       	callq  1040 <puts@plt>
    2167:	e8 0f fe ff ff       	callq  1f7b <do_curfunc>
    216c:	48 8b 05 65 44 00 00 	mov    0x4465(%rip),%rax        # 65d8 <curfunc>
    2173:	48 89 c2             	mov    %rax,%rdx
    2176:	48 8b 05 23 3f 00 00 	mov    0x3f23(%rip),%rax        # 60a0 <functree>
    217d:	48 89 d6             	mov    %rdx,%rsi
    2180:	48 89 c7             	mov    %rax,%rdi
    2183:	e8 1e 11 00 00       	callq  32a6 <splay_tree_lookup>
    2188:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    218c:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2191:	75 11                	jne    21a4 <do_curcallq+0x12f>
    2193:	48 8d 3d 7a 20 00 00 	lea    0x207a(%rip),%rdi        # 4214 <_IO_stdin_used+0x214>
    219a:	e8 a1 ee ff ff       	callq  1040 <puts@plt>
    219f:	e9 9e 00 00 00       	jmpq   2242 <do_curcallq+0x1cd>
    21a4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    21a8:	48 8b 40 08          	mov    0x8(%rax),%rax
    21ac:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    21b0:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    21b5:	75 21                	jne    21d8 <do_curcallq+0x163>
    21b7:	ba 00 00 00 00       	mov    $0x0,%edx
    21bc:	be 00 00 00 00       	mov    $0x0,%esi
    21c1:	48 8d 3d 76 16 00 00 	lea    0x1676(%rip),%rdi        # 383e <splay_tree_compare_strings>
    21c8:	e8 41 0b 00 00       	callq  2d0e <splay_tree_new>
    21cd:	48 89 c2             	mov    %rax,%rdx
    21d0:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    21d4:	48 89 50 08          	mov    %rdx,0x8(%rax)
    21d8:	48 8b 05 01 44 00 00 	mov    0x4401(%rip),%rax        # 65e0 <curcallq>
    21df:	48 89 c2             	mov    %rax,%rdx
    21e2:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    21e6:	48 8b 40 08          	mov    0x8(%rax),%rax
    21ea:	48 89 d6             	mov    %rdx,%rsi
    21ed:	48 89 c7             	mov    %rax,%rdi
    21f0:	e8 b1 10 00 00       	callq  32a6 <splay_tree_lookup>
    21f5:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    21f9:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    21fe:	74 1f                	je     221f <do_curcallq+0x1aa>
    2200:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2204:	48 8b 40 08          	mov    0x8(%rax),%rax
    2208:	89 45 e4             	mov    %eax,-0x1c(%rbp)
    220b:	83 45 e4 01          	addl   $0x1,-0x1c(%rbp)
    220f:	8b 45 e4             	mov    -0x1c(%rbp),%eax
    2212:	48 63 d0             	movslq %eax,%rdx
    2215:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2219:	48 89 50 08          	mov    %rdx,0x8(%rax)
    221d:	eb 23                	jmp    2242 <do_curcallq+0x1cd>
    221f:	48 8b 05 ba 43 00 00 	mov    0x43ba(%rip),%rax        # 65e0 <curcallq>
    2226:	48 89 c1             	mov    %rax,%rcx
    2229:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    222d:	48 8b 40 08          	mov    0x8(%rax),%rax
    2231:	ba 01 00 00 00       	mov    $0x1,%edx
    2236:	48 89 ce             	mov    %rcx,%rsi
    2239:	48 89 c7             	mov    %rax,%rdi
    223c:	e8 de 0b 00 00       	callq  2e1f <splay_tree_insert>
    2241:	90                   	nop
    2242:	c9                   	leaveq 
    2243:	c3                   	retq   

0000000000002244 <report_curfunc>:
    2244:	55                   	push   %rbp
    2245:	48 89 e5             	mov    %rsp,%rbp
    2248:	48 83 ec 30          	sub    $0x30,%rsp
    224c:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    2253:	00 
    2254:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    225b:	00 
    225c:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    2263:	00 
    2264:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
    226b:	00 
    226c:	48 c7 45 d8 00 00 00 	movq   $0x0,-0x28(%rbp)
    2273:	00 
    2274:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%rbp)
    227b:	48 8b 05 26 3e 00 00 	mov    0x3e26(%rip),%rax        # 60a8 <functreec>
    2282:	48 85 c0             	test   %rax,%rax
    2285:	0f 84 e9 01 00 00    	je     2474 <report_curfunc+0x230>
    228b:	48 8b 05 16 3e 00 00 	mov    0x3e16(%rip),%rax        # 60a8 <functreec>
    2292:	48 8b 00             	mov    (%rax),%rax
    2295:	48 85 c0             	test   %rax,%rax
    2298:	0f 84 d9 01 00 00    	je     2477 <report_curfunc+0x233>
    229e:	48 8b 05 03 3e 00 00 	mov    0x3e03(%rip),%rax        # 60a8 <functreec>
    22a5:	48 89 c7             	mov    %rax,%rdi
    22a8:	e8 10 12 00 00       	callq  34bd <splay_tree_min>
    22ad:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    22b1:	eb 4e                	jmp    2301 <report_curfunc+0xbd>
    22b3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    22b7:	48 8b 00             	mov    (%rax),%rax
    22ba:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
    22be:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    22c2:	48 8b 40 08          	mov    0x8(%rax),%rax
    22c6:	89 45 d4             	mov    %eax,-0x2c(%rbp)
    22c9:	8b 55 d4             	mov    -0x2c(%rbp),%edx
    22cc:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    22d0:	48 89 c6             	mov    %rax,%rsi
    22d3:	48 8d 3d 4e 1f 00 00 	lea    0x1f4e(%rip),%rdi        # 4228 <_IO_stdin_used+0x228>
    22da:	b8 00 00 00 00       	mov    $0x0,%eax
    22df:	e8 7c ed ff ff       	callq  1060 <printf@plt>
    22e4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    22e8:	48 8b 10             	mov    (%rax),%rdx
    22eb:	48 8b 05 b6 3d 00 00 	mov    0x3db6(%rip),%rax        # 60a8 <functreec>
    22f2:	48 89 d6             	mov    %rdx,%rsi
    22f5:	48 89 c7             	mov    %rax,%rdi
    22f8:	e8 0a 13 00 00       	callq  3607 <splay_tree_successor>
    22fd:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2301:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2306:	75 ab                	jne    22b3 <report_curfunc+0x6f>
    2308:	48 8b 05 91 3d 00 00 	mov    0x3d91(%rip),%rax        # 60a0 <functree>
    230f:	48 85 c0             	test   %rax,%rax
    2312:	0f 84 62 01 00 00    	je     247a <report_curfunc+0x236>
    2318:	48 8b 05 81 3d 00 00 	mov    0x3d81(%rip),%rax        # 60a0 <functree>
    231f:	48 8b 00             	mov    (%rax),%rax
    2322:	48 85 c0             	test   %rax,%rax
    2325:	0f 84 52 01 00 00    	je     247d <report_curfunc+0x239>
    232b:	48 8b 05 6e 3d 00 00 	mov    0x3d6e(%rip),%rax        # 60a0 <functree>
    2332:	48 89 c7             	mov    %rax,%rdi
    2335:	e8 83 11 00 00       	callq  34bd <splay_tree_min>
    233a:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    233e:	e9 23 01 00 00       	jmpq   2466 <report_curfunc+0x222>
    2343:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2347:	48 8b 00             	mov    (%rax),%rax
    234a:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
    234e:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2352:	48 8b 40 08          	mov    0x8(%rax),%rax
    2356:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    235a:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    235f:	75 3a                	jne    239b <report_curfunc+0x157>
    2361:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    2365:	48 89 c6             	mov    %rax,%rsi
    2368:	48 8d 3d f9 1e 00 00 	lea    0x1ef9(%rip),%rdi        # 4268 <_IO_stdin_used+0x268>
    236f:	b8 00 00 00 00       	mov    $0x0,%eax
    2374:	e8 e7 ec ff ff       	callq  1060 <printf@plt>
    2379:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    237d:	48 8b 10             	mov    (%rax),%rdx
    2380:	48 8b 05 19 3d 00 00 	mov    0x3d19(%rip),%rax        # 60a0 <functree>
    2387:	48 89 d6             	mov    %rdx,%rsi
    238a:	48 89 c7             	mov    %rax,%rdi
    238d:	e8 75 12 00 00       	callq  3607 <splay_tree_successor>
    2392:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2396:	e9 cb 00 00 00       	jmpq   2466 <report_curfunc+0x222>
    239b:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    239f:	48 8b 00             	mov    (%rax),%rax
    23a2:	48 85 c0             	test   %rax,%rax
    23a5:	75 3a                	jne    23e1 <report_curfunc+0x19d>
    23a7:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    23ab:	48 89 c6             	mov    %rax,%rsi
    23ae:	48 8d 3d b3 1e 00 00 	lea    0x1eb3(%rip),%rdi        # 4268 <_IO_stdin_used+0x268>
    23b5:	b8 00 00 00 00       	mov    $0x0,%eax
    23ba:	e8 a1 ec ff ff       	callq  1060 <printf@plt>
    23bf:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    23c3:	48 8b 10             	mov    (%rax),%rdx
    23c6:	48 8b 05 d3 3c 00 00 	mov    0x3cd3(%rip),%rax        # 60a0 <functree>
    23cd:	48 89 d6             	mov    %rdx,%rsi
    23d0:	48 89 c7             	mov    %rax,%rdi
    23d3:	e8 2f 12 00 00       	callq  3607 <splay_tree_successor>
    23d8:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    23dc:	e9 85 00 00 00       	jmpq   2466 <report_curfunc+0x222>
    23e1:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    23e5:	48 89 c7             	mov    %rax,%rdi
    23e8:	e8 d0 10 00 00       	callq  34bd <splay_tree_min>
    23ed:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    23f1:	eb 4f                	jmp    2442 <report_curfunc+0x1fe>
    23f3:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    23f7:	48 8b 00             	mov    (%rax),%rax
    23fa:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
    23fe:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2402:	48 8b 40 08          	mov    0x8(%rax),%rax
    2406:	89 45 d4             	mov    %eax,-0x2c(%rbp)
    2409:	8b 4d d4             	mov    -0x2c(%rbp),%ecx
    240c:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    2410:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    2414:	48 89 c6             	mov    %rax,%rsi
    2417:	48 8d 3d 82 1e 00 00 	lea    0x1e82(%rip),%rdi        # 42a0 <_IO_stdin_used+0x2a0>
    241e:	b8 00 00 00 00       	mov    $0x0,%eax
    2423:	e8 38 ec ff ff       	callq  1060 <printf@plt>
    2428:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    242c:	48 8b 10             	mov    (%rax),%rdx
    242f:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2433:	48 89 d6             	mov    %rdx,%rsi
    2436:	48 89 c7             	mov    %rax,%rdi
    2439:	e8 c9 11 00 00       	callq  3607 <splay_tree_successor>
    243e:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    2442:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    2447:	75 aa                	jne    23f3 <report_curfunc+0x1af>
    2449:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    244d:	48 8b 10             	mov    (%rax),%rdx
    2450:	48 8b 05 49 3c 00 00 	mov    0x3c49(%rip),%rax        # 60a0 <functree>
    2457:	48 89 d6             	mov    %rdx,%rsi
    245a:	48 89 c7             	mov    %rax,%rdi
    245d:	e8 a5 11 00 00       	callq  3607 <splay_tree_successor>
    2462:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2466:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    246b:	0f 85 d2 fe ff ff    	jne    2343 <report_curfunc+0xff>
    2471:	90                   	nop
    2472:	eb 0a                	jmp    247e <report_curfunc+0x23a>
    2474:	90                   	nop
    2475:	eb 07                	jmp    247e <report_curfunc+0x23a>
    2477:	90                   	nop
    2478:	eb 04                	jmp    247e <report_curfunc+0x23a>
    247a:	90                   	nop
    247b:	eb 01                	jmp    247e <report_curfunc+0x23a>
    247d:	90                   	nop
    247e:	c9                   	leaveq 
    247f:	c3                   	retq   

0000000000002480 <report_usetree>:
    2480:	55                   	push   %rbp
    2481:	48 89 e5             	mov    %rsp,%rbp
    2484:	48 83 ec 30          	sub    $0x30,%rsp
    2488:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
    248f:	00 
    2490:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    2497:	00 
    2498:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    249f:	00 
    24a0:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%rbp)
    24a7:	48 c7 45 d8 00 00 00 	movq   $0x0,-0x28(%rbp)
    24ae:	00 
    24af:	48 c7 45 d0 00 00 00 	movq   $0x0,-0x30(%rbp)
    24b6:	00 
    24b7:	48 8b 05 fa 3b 00 00 	mov    0x3bfa(%rip),%rax        # 60b8 <usetreec>
    24be:	48 85 c0             	test   %rax,%rax
    24c1:	0f 84 c4 00 00 00    	je     258b <report_usetree+0x10b>
    24c7:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%rbp)
    24ce:	48 8b 05 e3 3b 00 00 	mov    0x3be3(%rip),%rax        # 60b8 <usetreec>
    24d5:	48 89 c7             	mov    %rax,%rdi
    24d8:	e8 e0 0f 00 00       	callq  34bd <splay_tree_min>
    24dd:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    24e1:	eb 21                	jmp    2504 <report_usetree+0x84>
    24e3:	83 45 ec 01          	addl   $0x1,-0x14(%rbp)
    24e7:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    24eb:	48 8b 10             	mov    (%rax),%rdx
    24ee:	48 8b 05 c3 3b 00 00 	mov    0x3bc3(%rip),%rax        # 60b8 <usetreec>
    24f5:	48 89 d6             	mov    %rdx,%rsi
    24f8:	48 89 c7             	mov    %rax,%rdi
    24fb:	e8 07 11 00 00       	callq  3607 <splay_tree_successor>
    2500:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2504:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2509:	75 d8                	jne    24e3 <report_usetree+0x63>
    250b:	8b 45 ec             	mov    -0x14(%rbp),%eax
    250e:	89 c6                	mov    %eax,%esi
    2510:	48 8d 3d b9 1d 00 00 	lea    0x1db9(%rip),%rdi        # 42d0 <_IO_stdin_used+0x2d0>
    2517:	b8 00 00 00 00       	mov    $0x0,%eax
    251c:	e8 3f eb ff ff       	callq  1060 <printf@plt>
    2521:	48 8b 05 90 3b 00 00 	mov    0x3b90(%rip),%rax        # 60b8 <usetreec>
    2528:	48 89 c7             	mov    %rax,%rdi
    252b:	e8 8d 0f 00 00       	callq  34bd <splay_tree_min>
    2530:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2534:	eb 4e                	jmp    2584 <report_usetree+0x104>
    2536:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    253a:	48 8b 00             	mov    (%rax),%rax
    253d:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
    2541:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2545:	48 8b 40 08          	mov    0x8(%rax),%rax
    2549:	89 45 ec             	mov    %eax,-0x14(%rbp)
    254c:	8b 55 ec             	mov    -0x14(%rbp),%edx
    254f:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2553:	48 89 c6             	mov    %rax,%rsi
    2556:	48 8d 3d 9b 1d 00 00 	lea    0x1d9b(%rip),%rdi        # 42f8 <_IO_stdin_used+0x2f8>
    255d:	b8 00 00 00 00       	mov    $0x0,%eax
    2562:	e8 f9 ea ff ff       	callq  1060 <printf@plt>
    2567:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    256b:	48 8b 10             	mov    (%rax),%rdx
    256e:	48 8b 05 43 3b 00 00 	mov    0x3b43(%rip),%rax        # 60b8 <usetreec>
    2575:	48 89 d6             	mov    %rdx,%rsi
    2578:	48 89 c7             	mov    %rax,%rdi
    257b:	e8 87 10 00 00       	callq  3607 <splay_tree_successor>
    2580:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2584:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2589:	75 ab                	jne    2536 <report_usetree+0xb6>
    258b:	48 8b 05 1e 3b 00 00 	mov    0x3b1e(%rip),%rax        # 60b0 <usetree>
    2592:	48 85 c0             	test   %rax,%rax
    2595:	0f 84 c7 00 00 00    	je     2662 <report_usetree+0x1e2>
    259b:	48 8b 05 0e 3b 00 00 	mov    0x3b0e(%rip),%rax        # 60b0 <usetree>
    25a2:	48 89 c7             	mov    %rax,%rdi
    25a5:	e8 13 0f 00 00       	callq  34bd <splay_tree_min>
    25aa:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    25ae:	e9 a3 00 00 00       	jmpq   2656 <report_usetree+0x1d6>
    25b3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    25b7:	48 8b 00             	mov    (%rax),%rax
    25ba:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
    25be:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    25c2:	48 8b 40 08          	mov    0x8(%rax),%rax
    25c6:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
    25ca:	48 83 7d e0 00       	cmpq   $0x0,-0x20(%rbp)
    25cf:	74 68                	je     2639 <report_usetree+0x1b9>
    25d1:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    25d5:	48 89 c7             	mov    %rax,%rdi
    25d8:	e8 e0 0e 00 00       	callq  34bd <splay_tree_min>
    25dd:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    25e1:	eb 4f                	jmp    2632 <report_usetree+0x1b2>
    25e3:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    25e7:	48 8b 00             	mov    (%rax),%rax
    25ea:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
    25ee:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    25f2:	48 8b 40 08          	mov    0x8(%rax),%rax
    25f6:	89 45 ec             	mov    %eax,-0x14(%rbp)
    25f9:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
    25fd:	8b 55 ec             	mov    -0x14(%rbp),%edx
    2600:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2604:	48 89 c6             	mov    %rax,%rsi
    2607:	48 8d 3d 1a 1d 00 00 	lea    0x1d1a(%rip),%rdi        # 4328 <_IO_stdin_used+0x328>
    260e:	b8 00 00 00 00       	mov    $0x0,%eax
    2613:	e8 48 ea ff ff       	callq  1060 <printf@plt>
    2618:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    261c:	48 8b 10             	mov    (%rax),%rdx
    261f:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    2623:	48 89 d6             	mov    %rdx,%rsi
    2626:	48 89 c7             	mov    %rax,%rdi
    2629:	e8 d9 0f 00 00       	callq  3607 <splay_tree_successor>
    262e:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    2632:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    2637:	75 aa                	jne    25e3 <report_usetree+0x163>
    2639:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    263d:	48 8b 10             	mov    (%rax),%rdx
    2640:	48 8b 05 69 3a 00 00 	mov    0x3a69(%rip),%rax        # 60b0 <usetree>
    2647:	48 89 d6             	mov    %rdx,%rsi
    264a:	48 89 c7             	mov    %rax,%rdi
    264d:	e8 b5 0f 00 00       	callq  3607 <splay_tree_successor>
    2652:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2656:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    265b:	0f 85 52 ff ff ff    	jne    25b3 <report_usetree+0x133>
    2661:	90                   	nop
    2662:	90                   	nop
    2663:	c9                   	leaveq 
    2664:	c3                   	retq   

0000000000002665 <pr_usetree>:
    2665:	55                   	push   %rbp
    2666:	48 89 e5             	mov    %rsp,%rbp
    2669:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    2670:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
    2677:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    267e:	00 
    267f:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    2686:	00 
    2687:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
    268e:	00 
    268f:	48 c7 45 d8 00 00 00 	movq   $0x0,-0x28(%rbp)
    2696:	00 
    2697:	48 c7 45 d0 00 00 00 	movq   $0x0,-0x30(%rbp)
    269e:	00 
    269f:	48 c7 45 c8 00 00 00 	movq   $0x0,-0x38(%rbp)
    26a6:	00 
    26a7:	48 8b 05 02 3a 00 00 	mov    0x3a02(%rip),%rax        # 60b0 <usetree>
    26ae:	48 85 c0             	test   %rax,%rax
    26b1:	90                   	nop
    26b2:	5d                   	pop    %rbp
    26b3:	c3                   	retq   

00000000000026b4 <pr_functree>:
    26b4:	55                   	push   %rbp
    26b5:	48 89 e5             	mov    %rsp,%rbp
    26b8:	48 83 ec 40          	sub    $0x40,%rsp
    26bc:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    26c3:	00 
    26c4:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    26cb:	00 
    26cc:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    26d3:	00 
    26d4:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
    26db:	00 
    26dc:	48 c7 45 d8 00 00 00 	movq   $0x0,-0x28(%rbp)
    26e3:	00 
    26e4:	48 c7 45 d0 00 00 00 	movq   $0x0,-0x30(%rbp)
    26eb:	00 
    26ec:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%rbp)
    26f3:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%rbp)
    26fa:	48 8b 05 9f 39 00 00 	mov    0x399f(%rip),%rax        # 60a0 <functree>
    2701:	48 85 c0             	test   %rax,%rax
    2704:	0f 84 32 01 00 00    	je     283c <pr_functree+0x188>
    270a:	8b 05 e0 3e 00 00    	mov    0x3ee0(%rip),%eax        # 65f0 <sgn>
    2710:	83 c0 01             	add    $0x1,%eax
    2713:	89 05 d7 3e 00 00    	mov    %eax,0x3ed7(%rip)        # 65f0 <sgn>
    2719:	48 8b 05 80 39 00 00 	mov    0x3980(%rip),%rax        # 60a0 <functree>
    2720:	48 89 c7             	mov    %rax,%rdi
    2723:	e8 95 0d 00 00       	callq  34bd <splay_tree_min>
    2728:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    272c:	e9 fd 00 00 00       	jmpq   282e <pr_functree+0x17a>
    2731:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2735:	48 8b 00             	mov    (%rax),%rax
    2738:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
    273c:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2740:	48 8b 40 08          	mov    0x8(%rax),%rax
    2744:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    2748:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    274c:	48 8b 05 55 39 00 00 	mov    0x3955(%rip),%rax        # 60a8 <functreec>
    2753:	48 89 d6             	mov    %rdx,%rsi
    2756:	48 89 c7             	mov    %rax,%rdi
    2759:	e8 48 0b 00 00       	callq  32a6 <splay_tree_lookup>
    275e:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
    2762:	48 83 7d e0 00       	cmpq   $0x0,-0x20(%rbp)
    2767:	74 39                	je     27a2 <pr_functree+0xee>
    2769:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    276d:	48 8b 40 08          	mov    0x8(%rax),%rax
    2771:	89 45 c8             	mov    %eax,-0x38(%rbp)
    2774:	8b 05 76 3e 00 00    	mov    0x3e76(%rip),%eax        # 65f0 <sgn>
    277a:	83 c0 01             	add    $0x1,%eax
    277d:	89 05 6d 3e 00 00    	mov    %eax,0x3e6d(%rip)        # 65f0 <sgn>
    2783:	8b 4d c8             	mov    -0x38(%rbp),%ecx
    2786:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    278a:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    278e:	48 89 c6             	mov    %rax,%rsi
    2791:	48 8d 3d c8 1b 00 00 	lea    0x1bc8(%rip),%rdi        # 4360 <_IO_stdin_used+0x360>
    2798:	b8 00 00 00 00       	mov    $0x0,%eax
    279d:	e8 be e8 ff ff       	callq  1060 <printf@plt>
    27a2:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    27a7:	74 68                	je     2811 <pr_functree+0x15d>
    27a9:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    27ad:	48 89 c7             	mov    %rax,%rdi
    27b0:	e8 08 0d 00 00       	callq  34bd <splay_tree_min>
    27b5:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    27b9:	eb 4f                	jmp    280a <pr_functree+0x156>
    27bb:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    27bf:	48 8b 00             	mov    (%rax),%rax
    27c2:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
    27c6:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    27ca:	48 8b 40 08          	mov    0x8(%rax),%rax
    27ce:	89 45 cc             	mov    %eax,-0x34(%rbp)
    27d1:	8b 4d cc             	mov    -0x34(%rbp),%ecx
    27d4:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
    27d8:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    27dc:	48 89 c6             	mov    %rax,%rsi
    27df:	48 8d 3d ca 1b 00 00 	lea    0x1bca(%rip),%rdi        # 43b0 <_IO_stdin_used+0x3b0>
    27e6:	b8 00 00 00 00       	mov    $0x0,%eax
    27eb:	e8 70 e8 ff ff       	callq  1060 <printf@plt>
    27f0:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    27f4:	48 8b 10             	mov    (%rax),%rdx
    27f7:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    27fb:	48 89 d6             	mov    %rdx,%rsi
    27fe:	48 89 c7             	mov    %rax,%rdi
    2801:	e8 01 0e 00 00       	callq  3607 <splay_tree_successor>
    2806:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    280a:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    280f:	75 aa                	jne    27bb <pr_functree+0x107>
    2811:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2815:	48 8b 10             	mov    (%rax),%rdx
    2818:	48 8b 05 81 38 00 00 	mov    0x3881(%rip),%rax        # 60a0 <functree>
    281f:	48 89 d6             	mov    %rdx,%rsi
    2822:	48 89 c7             	mov    %rax,%rdi
    2825:	e8 dd 0d 00 00       	callq  3607 <splay_tree_successor>
    282a:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    282e:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2833:	0f 85 f8 fe ff ff    	jne    2731 <pr_functree+0x7d>
    2839:	90                   	nop
    283a:	eb 01                	jmp    283d <pr_functree+0x189>
    283c:	90                   	nop
    283d:	c9                   	leaveq 
    283e:	c3                   	retq   

000000000000283f <splay_tree_delete_helper>:
    283f:	55                   	push   %rbp
    2840:	48 89 e5             	mov    %rsp,%rbp
    2843:	48 83 ec 10          	sub    $0x10,%rsp
    2847:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    284b:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    284f:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    2854:	0f 84 ee 00 00 00    	je     2948 <splay_tree_delete_helper+0x109>
    285a:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    285e:	48 8b 40 10          	mov    0x10(%rax),%rax
    2862:	48 85 c0             	test   %rax,%rax
    2865:	74 17                	je     287e <splay_tree_delete_helper+0x3f>
    2867:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    286b:	48 8b 50 10          	mov    0x10(%rax),%rdx
    286f:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2873:	48 89 d6             	mov    %rdx,%rsi
    2876:	48 89 c7             	mov    %rax,%rdi
    2879:	e8 c1 ff ff ff       	callq  283f <splay_tree_delete_helper>
    287e:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2882:	48 8b 40 18          	mov    0x18(%rax),%rax
    2886:	48 85 c0             	test   %rax,%rax
    2889:	74 17                	je     28a2 <splay_tree_delete_helper+0x63>
    288b:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    288f:	48 8b 50 18          	mov    0x18(%rax),%rdx
    2893:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2897:	48 89 d6             	mov    %rdx,%rsi
    289a:	48 89 c7             	mov    %rax,%rdi
    289d:	e8 9d ff ff ff       	callq  283f <splay_tree_delete_helper>
    28a2:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    28a6:	48 8b 40 10          	mov    0x10(%rax),%rax
    28aa:	48 85 c0             	test   %rax,%rax
    28ad:	74 2b                	je     28da <splay_tree_delete_helper+0x9b>
    28af:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    28b3:	48 8b 00             	mov    (%rax),%rax
    28b6:	48 85 c0             	test   %rax,%rax
    28b9:	74 14                	je     28cf <splay_tree_delete_helper+0x90>
    28bb:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    28bf:	48 8b 40 10          	mov    0x10(%rax),%rax
    28c3:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    28c7:	48 8b 12             	mov    (%rdx),%rdx
    28ca:	48 89 d7             	mov    %rdx,%rdi
    28cd:	ff d0                	callq  *%rax
    28cf:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    28d3:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
    28da:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    28de:	48 8b 40 18          	mov    0x18(%rax),%rax
    28e2:	48 85 c0             	test   %rax,%rax
    28e5:	74 2e                	je     2915 <splay_tree_delete_helper+0xd6>
    28e7:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    28eb:	48 8b 40 08          	mov    0x8(%rax),%rax
    28ef:	48 85 c0             	test   %rax,%rax
    28f2:	74 15                	je     2909 <splay_tree_delete_helper+0xca>
    28f4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    28f8:	48 8b 40 18          	mov    0x18(%rax),%rax
    28fc:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    2900:	48 8b 52 08          	mov    0x8(%rdx),%rdx
    2904:	48 89 d7             	mov    %rdx,%rdi
    2907:	ff d0                	callq  *%rax
    2909:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    290d:	48 c7 40 08 00 00 00 	movq   $0x0,0x8(%rax)
    2914:	00 
    2915:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2919:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    2920:	00 
    2921:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2925:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    292c:	00 
    292d:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2931:	ba cb 04 00 00       	mov    $0x4cb,%edx
    2936:	48 8d 35 a3 1a 00 00 	lea    0x1aa3(%rip),%rsi        # 43e0 <__FUNCTION__.3964>
    293d:	48 89 c7             	mov    %rax,%rdi
    2940:	e8 a5 f3 ff ff       	callq  1cea <myfree>
    2945:	90                   	nop
    2946:	eb 01                	jmp    2949 <splay_tree_delete_helper+0x10a>
    2948:	90                   	nop
    2949:	c9                   	leaveq 
    294a:	c3                   	retq   

000000000000294b <rotate_left>:
    294b:	55                   	push   %rbp
    294c:	48 89 e5             	mov    %rsp,%rbp
    294f:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    2953:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    2957:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    295b:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    2962:	00 
    2963:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2967:	48 8b 40 18          	mov    0x18(%rax),%rax
    296b:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    296f:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2973:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    2977:	48 89 50 18          	mov    %rdx,0x18(%rax)
    297b:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    297f:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    2983:	48 89 50 10          	mov    %rdx,0x10(%rax)
    2987:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    298b:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    298f:	48 89 10             	mov    %rdx,(%rax)
    2992:	90                   	nop
    2993:	5d                   	pop    %rbp
    2994:	c3                   	retq   

0000000000002995 <rotate_right>:
    2995:	55                   	push   %rbp
    2996:	48 89 e5             	mov    %rsp,%rbp
    2999:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    299d:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    29a1:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    29a5:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    29ac:	00 
    29ad:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    29b1:	48 8b 40 10          	mov    0x10(%rax),%rax
    29b5:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    29b9:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    29bd:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    29c1:	48 89 50 10          	mov    %rdx,0x10(%rax)
    29c5:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    29c9:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    29cd:	48 89 50 18          	mov    %rdx,0x18(%rax)
    29d1:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    29d5:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    29d9:	48 89 10             	mov    %rdx,(%rax)
    29dc:	90                   	nop
    29dd:	5d                   	pop    %rbp
    29de:	c3                   	retq   

00000000000029df <splay_tree_splay>:
    29df:	55                   	push   %rbp
    29e0:	48 89 e5             	mov    %rsp,%rbp
    29e3:	48 83 ec 30          	sub    $0x30,%rsp
    29e7:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    29eb:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
    29ef:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    29f6:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%rbp)
    29fd:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    2a04:	00 
    2a05:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    2a0c:	00 
    2a0d:	48 83 7d d8 00       	cmpq   $0x0,-0x28(%rbp)
    2a12:	0f 84 45 02 00 00    	je     2c5d <splay_tree_splay+0x27e>
    2a18:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2a1c:	48 8b 00             	mov    (%rax),%rax
    2a1f:	48 85 c0             	test   %rax,%rax
    2a22:	0f 84 38 02 00 00    	je     2c60 <splay_tree_splay+0x281>
    2a28:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    2a2f:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%rbp)
    2a36:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    2a3d:	00 
    2a3e:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    2a45:	00 
    2a46:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2a4a:	48 8b 00             	mov    (%rax),%rax
    2a4d:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    2a51:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2a55:	48 8b 40 08          	mov    0x8(%rax),%rax
    2a59:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    2a5d:	48 8b 0a             	mov    (%rdx),%rcx
    2a60:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
    2a64:	48 89 ce             	mov    %rcx,%rsi
    2a67:	48 89 d7             	mov    %rdx,%rdi
    2a6a:	ff d0                	callq  *%rax
    2a6c:	89 45 f4             	mov    %eax,-0xc(%rbp)
    2a6f:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2a73:	0f 84 ea 01 00 00    	je     2c63 <splay_tree_splay+0x284>
    2a79:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2a7d:	79 0e                	jns    2a8d <splay_tree_splay+0xae>
    2a7f:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2a83:	48 8b 40 10          	mov    0x10(%rax),%rax
    2a87:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2a8b:	eb 0c                	jmp    2a99 <splay_tree_splay+0xba>
    2a8d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2a91:	48 8b 40 18          	mov    0x18(%rax),%rax
    2a95:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2a99:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2a9e:	0f 84 c2 01 00 00    	je     2c66 <splay_tree_splay+0x287>
    2aa4:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2aa8:	48 8b 40 08          	mov    0x8(%rax),%rax
    2aac:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    2ab0:	48 8b 0a             	mov    (%rdx),%rcx
    2ab3:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
    2ab7:	48 89 ce             	mov    %rcx,%rsi
    2aba:	48 89 d7             	mov    %rdx,%rdi
    2abd:	ff d0                	callq  *%rax
    2abf:	89 45 f0             	mov    %eax,-0x10(%rbp)
    2ac2:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2ac6:	74 26                	je     2aee <splay_tree_splay+0x10f>
    2ac8:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2acc:	79 0d                	jns    2adb <splay_tree_splay+0xfc>
    2ace:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2ad2:	48 8b 40 10          	mov    0x10(%rax),%rax
    2ad6:	48 85 c0             	test   %rax,%rax
    2ad9:	74 13                	je     2aee <splay_tree_splay+0x10f>
    2adb:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2adf:	7e 4b                	jle    2b2c <splay_tree_splay+0x14d>
    2ae1:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2ae5:	48 8b 40 18          	mov    0x18(%rax),%rax
    2ae9:	48 85 c0             	test   %rax,%rax
    2aec:	75 3e                	jne    2b2c <splay_tree_splay+0x14d>
    2aee:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2af2:	79 1c                	jns    2b10 <splay_tree_splay+0x131>
    2af4:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2af8:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    2afc:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    2b00:	48 89 ce             	mov    %rcx,%rsi
    2b03:	48 89 c7             	mov    %rax,%rdi
    2b06:	e8 40 fe ff ff       	callq  294b <rotate_left>
    2b0b:	e9 57 01 00 00       	jmpq   2c67 <splay_tree_splay+0x288>
    2b10:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2b14:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    2b18:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    2b1c:	48 89 ce             	mov    %rcx,%rsi
    2b1f:	48 89 c7             	mov    %rax,%rdi
    2b22:	e8 6e fe ff ff       	callq  2995 <rotate_right>
    2b27:	e9 3b 01 00 00       	jmpq   2c67 <splay_tree_splay+0x288>
    2b2c:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2b30:	79 45                	jns    2b77 <splay_tree_splay+0x198>
    2b32:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2b36:	79 3f                	jns    2b77 <splay_tree_splay+0x198>
    2b38:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2b3c:	48 8b 50 10          	mov    0x10(%rax),%rdx
    2b40:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2b44:	48 8d 48 10          	lea    0x10(%rax),%rcx
    2b48:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2b4c:	48 89 c6             	mov    %rax,%rsi
    2b4f:	48 89 cf             	mov    %rcx,%rdi
    2b52:	e8 f4 fd ff ff       	callq  294b <rotate_left>
    2b57:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2b5b:	48 8b 50 10          	mov    0x10(%rax),%rdx
    2b5f:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2b63:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    2b67:	48 89 ce             	mov    %rcx,%rsi
    2b6a:	48 89 c7             	mov    %rax,%rdi
    2b6d:	e8 d9 fd ff ff       	callq  294b <rotate_left>
    2b72:	e9 e1 00 00 00       	jmpq   2c58 <splay_tree_splay+0x279>
    2b77:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2b7b:	7e 45                	jle    2bc2 <splay_tree_splay+0x1e3>
    2b7d:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2b81:	7e 3f                	jle    2bc2 <splay_tree_splay+0x1e3>
    2b83:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2b87:	48 8b 50 18          	mov    0x18(%rax),%rdx
    2b8b:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2b8f:	48 8d 48 18          	lea    0x18(%rax),%rcx
    2b93:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2b97:	48 89 c6             	mov    %rax,%rsi
    2b9a:	48 89 cf             	mov    %rcx,%rdi
    2b9d:	e8 f3 fd ff ff       	callq  2995 <rotate_right>
    2ba2:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2ba6:	48 8b 50 18          	mov    0x18(%rax),%rdx
    2baa:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2bae:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    2bb2:	48 89 ce             	mov    %rcx,%rsi
    2bb5:	48 89 c7             	mov    %rax,%rdi
    2bb8:	e8 d8 fd ff ff       	callq  2995 <rotate_right>
    2bbd:	e9 96 00 00 00       	jmpq   2c58 <splay_tree_splay+0x279>
    2bc2:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2bc6:	79 42                	jns    2c0a <splay_tree_splay+0x22b>
    2bc8:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2bcc:	7e 3c                	jle    2c0a <splay_tree_splay+0x22b>
    2bce:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2bd2:	48 8b 50 18          	mov    0x18(%rax),%rdx
    2bd6:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2bda:	48 8d 48 10          	lea    0x10(%rax),%rcx
    2bde:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2be2:	48 89 c6             	mov    %rax,%rsi
    2be5:	48 89 cf             	mov    %rcx,%rdi
    2be8:	e8 a8 fd ff ff       	callq  2995 <rotate_right>
    2bed:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2bf1:	48 8b 50 10          	mov    0x10(%rax),%rdx
    2bf5:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2bf9:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    2bfd:	48 89 ce             	mov    %rcx,%rsi
    2c00:	48 89 c7             	mov    %rax,%rdi
    2c03:	e8 43 fd ff ff       	callq  294b <rotate_left>
    2c08:	eb 4e                	jmp    2c58 <splay_tree_splay+0x279>
    2c0a:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    2c0e:	0f 8e 14 fe ff ff    	jle    2a28 <splay_tree_splay+0x49>
    2c14:	83 7d f0 00          	cmpl   $0x0,-0x10(%rbp)
    2c18:	0f 89 0a fe ff ff    	jns    2a28 <splay_tree_splay+0x49>
    2c1e:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2c22:	48 8b 50 10          	mov    0x10(%rax),%rdx
    2c26:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2c2a:	48 8d 48 18          	lea    0x18(%rax),%rcx
    2c2e:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2c32:	48 89 c6             	mov    %rax,%rsi
    2c35:	48 89 cf             	mov    %rcx,%rdi
    2c38:	e8 0e fd ff ff       	callq  294b <rotate_left>
    2c3d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2c41:	48 8b 50 18          	mov    0x18(%rax),%rdx
    2c45:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2c49:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    2c4d:	48 89 ce             	mov    %rcx,%rsi
    2c50:	48 89 c7             	mov    %rax,%rdi
    2c53:	e8 3d fd ff ff       	callq  2995 <rotate_right>
    2c58:	e9 cb fd ff ff       	jmpq   2a28 <splay_tree_splay+0x49>
    2c5d:	90                   	nop
    2c5e:	eb 07                	jmp    2c67 <splay_tree_splay+0x288>
    2c60:	90                   	nop
    2c61:	eb 04                	jmp    2c67 <splay_tree_splay+0x288>
    2c63:	90                   	nop
    2c64:	eb 01                	jmp    2c67 <splay_tree_splay+0x288>
    2c66:	90                   	nop
    2c67:	c9                   	leaveq 
    2c68:	c3                   	retq   

0000000000002c69 <splay_tree_foreach_helper>:
    2c69:	55                   	push   %rbp
    2c6a:	48 89 e5             	mov    %rsp,%rbp
    2c6d:	48 83 ec 30          	sub    $0x30,%rsp
    2c71:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    2c75:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    2c79:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    2c7d:	48 89 4d d0          	mov    %rcx,-0x30(%rbp)
    2c81:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    2c88:	48 83 7d d8 00       	cmpq   $0x0,-0x28(%rbp)
    2c8d:	75 07                	jne    2c96 <splay_tree_foreach_helper+0x2d>
    2c8f:	b8 00 00 00 00       	mov    $0x0,%eax
    2c94:	eb 76                	jmp    2d0c <splay_tree_foreach_helper+0xa3>
    2c96:	48 83 7d e0 00       	cmpq   $0x0,-0x20(%rbp)
    2c9b:	75 07                	jne    2ca4 <splay_tree_foreach_helper+0x3b>
    2c9d:	b8 00 00 00 00       	mov    $0x0,%eax
    2ca2:	eb 68                	jmp    2d0c <splay_tree_foreach_helper+0xa3>
    2ca4:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    2ca8:	48 8b 70 10          	mov    0x10(%rax),%rsi
    2cac:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
    2cb0:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    2cb4:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2cb8:	48 89 c7             	mov    %rax,%rdi
    2cbb:	e8 a9 ff ff ff       	callq  2c69 <splay_tree_foreach_helper>
    2cc0:	89 45 fc             	mov    %eax,-0x4(%rbp)
    2cc3:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    2cc7:	74 05                	je     2cce <splay_tree_foreach_helper+0x65>
    2cc9:	8b 45 fc             	mov    -0x4(%rbp),%eax
    2ccc:	eb 3e                	jmp    2d0c <splay_tree_foreach_helper+0xa3>
    2cce:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
    2cd2:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    2cd6:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    2cda:	48 89 ce             	mov    %rcx,%rsi
    2cdd:	48 89 d7             	mov    %rdx,%rdi
    2ce0:	ff d0                	callq  *%rax
    2ce2:	89 45 fc             	mov    %eax,-0x4(%rbp)
    2ce5:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    2ce9:	74 05                	je     2cf0 <splay_tree_foreach_helper+0x87>
    2ceb:	8b 45 fc             	mov    -0x4(%rbp),%eax
    2cee:	eb 1c                	jmp    2d0c <splay_tree_foreach_helper+0xa3>
    2cf0:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    2cf4:	48 8b 70 18          	mov    0x18(%rax),%rsi
    2cf8:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
    2cfc:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    2d00:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2d04:	48 89 c7             	mov    %rax,%rdi
    2d07:	e8 5d ff ff ff       	callq  2c69 <splay_tree_foreach_helper>
    2d0c:	c9                   	leaveq 
    2d0d:	c3                   	retq   

0000000000002d0e <splay_tree_new>:
    2d0e:	55                   	push   %rbp
    2d0f:	48 89 e5             	mov    %rsp,%rbp
    2d12:	48 83 ec 30          	sub    $0x30,%rsp
    2d16:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    2d1a:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    2d1e:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    2d22:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    2d29:	00 
    2d2a:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    2d2f:	75 07                	jne    2d38 <splay_tree_new+0x2a>
    2d31:	b8 00 00 00 00       	mov    $0x0,%eax
    2d36:	eb 5b                	jmp    2d93 <splay_tree_new+0x85>
    2d38:	ba 91 05 00 00       	mov    $0x591,%edx
    2d3d:	48 8d 35 bc 16 00 00 	lea    0x16bc(%rip),%rsi        # 4400 <__FUNCTION__.3999>
    2d44:	bf 20 00 00 00       	mov    $0x20,%edi
    2d49:	e8 4f ef ff ff       	callq  1c9d <mymalloc>
    2d4e:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    2d52:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2d57:	75 07                	jne    2d60 <splay_tree_new+0x52>
    2d59:	b8 00 00 00 00       	mov    $0x0,%eax
    2d5e:	eb 33                	jmp    2d93 <splay_tree_new+0x85>
    2d60:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2d64:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
    2d6b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2d6f:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    2d73:	48 89 50 08          	mov    %rdx,0x8(%rax)
    2d77:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2d7b:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    2d7f:	48 89 50 10          	mov    %rdx,0x10(%rax)
    2d83:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2d87:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    2d8b:	48 89 50 18          	mov    %rdx,0x18(%rax)
    2d8f:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2d93:	c9                   	leaveq 
    2d94:	c3                   	retq   

0000000000002d95 <splay_tree_delete>:
    2d95:	55                   	push   %rbp
    2d96:	48 89 e5             	mov    %rsp,%rbp
    2d99:	48 83 ec 10          	sub    $0x10,%rsp
    2d9d:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    2da1:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    2da6:	75 07                	jne    2daf <splay_tree_delete+0x1a>
    2da8:	b8 00 00 00 00       	mov    $0x0,%eax
    2dad:	eb 6e                	jmp    2e1d <splay_tree_delete+0x88>
    2daf:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2db3:	48 8b 00             	mov    (%rax),%rax
    2db6:	48 85 c0             	test   %rax,%rax
    2db9:	74 16                	je     2dd1 <splay_tree_delete+0x3c>
    2dbb:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2dbf:	48 8b 10             	mov    (%rax),%rdx
    2dc2:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2dc6:	48 89 d6             	mov    %rdx,%rsi
    2dc9:	48 89 c7             	mov    %rax,%rdi
    2dcc:	e8 6e fa ff ff       	callq  283f <splay_tree_delete_helper>
    2dd1:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2dd5:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
    2ddc:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2de0:	48 c7 40 08 00 00 00 	movq   $0x0,0x8(%rax)
    2de7:	00 
    2de8:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2dec:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    2df3:	00 
    2df4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2df8:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    2dff:	00 
    2e00:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    2e04:	ba b6 05 00 00       	mov    $0x5b6,%edx
    2e09:	48 8d 35 00 16 00 00 	lea    0x1600(%rip),%rsi        # 4410 <__FUNCTION__.4003>
    2e10:	48 89 c7             	mov    %rax,%rdi
    2e13:	e8 d2 ee ff ff       	callq  1cea <myfree>
    2e18:	b8 00 00 00 00       	mov    $0x0,%eax
    2e1d:	c9                   	leaveq 
    2e1e:	c3                   	retq   

0000000000002e1f <splay_tree_insert>:
    2e1f:	55                   	push   %rbp
    2e20:	48 89 e5             	mov    %rsp,%rbp
    2e23:	48 83 ec 30          	sub    $0x30,%rsp
    2e27:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    2e2b:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    2e2f:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    2e33:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    2e3a:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    2e41:	00 
    2e42:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    2e47:	0f 84 79 01 00 00    	je     2fc6 <splay_tree_insert+0x1a7>
    2e4d:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    2e51:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2e55:	48 89 d6             	mov    %rdx,%rsi
    2e58:	48 89 c7             	mov    %rax,%rdi
    2e5b:	e8 7f fb ff ff       	callq  29df <splay_tree_splay>
    2e60:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2e64:	48 8b 00             	mov    (%rax),%rax
    2e67:	48 85 c0             	test   %rax,%rax
    2e6a:	74 21                	je     2e8d <splay_tree_insert+0x6e>
    2e6c:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2e70:	48 8b 40 08          	mov    0x8(%rax),%rax
    2e74:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    2e78:	48 8b 12             	mov    (%rdx),%rdx
    2e7b:	48 8b 12             	mov    (%rdx),%rdx
    2e7e:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
    2e82:	48 89 ce             	mov    %rcx,%rsi
    2e85:	48 89 d7             	mov    %rdx,%rdi
    2e88:	ff d0                	callq  *%rax
    2e8a:	89 45 fc             	mov    %eax,-0x4(%rbp)
    2e8d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2e91:	48 8b 00             	mov    (%rax),%rax
    2e94:	48 85 c0             	test   %rax,%rax
    2e97:	74 4f                	je     2ee8 <splay_tree_insert+0xc9>
    2e99:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    2e9d:	75 49                	jne    2ee8 <splay_tree_insert+0xc9>
    2e9f:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2ea3:	48 8b 40 18          	mov    0x18(%rax),%rax
    2ea7:	48 85 c0             	test   %rax,%rax
    2eaa:	74 28                	je     2ed4 <splay_tree_insert+0xb5>
    2eac:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2eb0:	48 8b 00             	mov    (%rax),%rax
    2eb3:	48 8b 40 08          	mov    0x8(%rax),%rax
    2eb7:	48 85 c0             	test   %rax,%rax
    2eba:	74 18                	je     2ed4 <splay_tree_insert+0xb5>
    2ebc:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2ec0:	48 8b 40 18          	mov    0x18(%rax),%rax
    2ec4:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    2ec8:	48 8b 12             	mov    (%rdx),%rdx
    2ecb:	48 8b 52 08          	mov    0x8(%rdx),%rdx
    2ecf:	48 89 d7             	mov    %rdx,%rdi
    2ed2:	ff d0                	callq  *%rax
    2ed4:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2ed8:	48 8b 00             	mov    (%rax),%rax
    2edb:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    2edf:	48 89 50 08          	mov    %rdx,0x8(%rax)
    2ee3:	e9 db 00 00 00       	jmpq   2fc3 <splay_tree_insert+0x1a4>
    2ee8:	ba e4 05 00 00       	mov    $0x5e4,%edx
    2eed:	48 8d 35 3c 15 00 00 	lea    0x153c(%rip),%rsi        # 4430 <__FUNCTION__.4011>
    2ef4:	bf 20 00 00 00       	mov    $0x20,%edi
    2ef9:	e8 9f ed ff ff       	callq  1c9d <mymalloc>
    2efe:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    2f02:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    2f07:	0f 84 bc 00 00 00    	je     2fc9 <splay_tree_insert+0x1aa>
    2f0d:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f11:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    2f15:	48 89 10             	mov    %rdx,(%rax)
    2f18:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f1c:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    2f20:	48 89 50 08          	mov    %rdx,0x8(%rax)
    2f24:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2f28:	48 8b 00             	mov    (%rax),%rax
    2f2b:	48 85 c0             	test   %rax,%rax
    2f2e:	75 1a                	jne    2f4a <splay_tree_insert+0x12b>
    2f30:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f34:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    2f3b:	00 
    2f3c:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f40:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    2f47:	00 
    2f48:	eb 6e                	jmp    2fb8 <splay_tree_insert+0x199>
    2f4a:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    2f4e:	79 35                	jns    2f85 <splay_tree_insert+0x166>
    2f50:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2f54:	48 8b 10             	mov    (%rax),%rdx
    2f57:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f5b:	48 89 50 10          	mov    %rdx,0x10(%rax)
    2f5f:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f63:	48 8b 40 10          	mov    0x10(%rax),%rax
    2f67:	48 8b 50 18          	mov    0x18(%rax),%rdx
    2f6b:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f6f:	48 89 50 18          	mov    %rdx,0x18(%rax)
    2f73:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f77:	48 8b 40 10          	mov    0x10(%rax),%rax
    2f7b:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    2f82:	00 
    2f83:	eb 33                	jmp    2fb8 <splay_tree_insert+0x199>
    2f85:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2f89:	48 8b 10             	mov    (%rax),%rdx
    2f8c:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f90:	48 89 50 18          	mov    %rdx,0x18(%rax)
    2f94:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2f98:	48 8b 40 18          	mov    0x18(%rax),%rax
    2f9c:	48 8b 50 10          	mov    0x10(%rax),%rdx
    2fa0:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2fa4:	48 89 50 10          	mov    %rdx,0x10(%rax)
    2fa8:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    2fac:	48 8b 40 18          	mov    0x18(%rax),%rax
    2fb0:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    2fb7:	00 
    2fb8:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2fbc:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    2fc0:	48 89 10             	mov    %rdx,(%rax)
    2fc3:	90                   	nop
    2fc4:	eb 04                	jmp    2fca <splay_tree_insert+0x1ab>
    2fc6:	90                   	nop
    2fc7:	eb 01                	jmp    2fca <splay_tree_insert+0x1ab>
    2fc9:	90                   	nop
    2fca:	c9                   	leaveq 
    2fcb:	c3                   	retq   

0000000000002fcc <splay_tree_insert_duplicates>:
    2fcc:	55                   	push   %rbp
    2fcd:	48 89 e5             	mov    %rsp,%rbp
    2fd0:	48 83 ec 30          	sub    $0x30,%rsp
    2fd4:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    2fd8:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    2fdc:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    2fe0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
    2fe7:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    2fee:	00 
    2fef:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    2ff3:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    2ff7:	48 89 d6             	mov    %rdx,%rsi
    2ffa:	48 89 c7             	mov    %rax,%rdi
    2ffd:	e8 dd f9 ff ff       	callq  29df <splay_tree_splay>
    3002:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3006:	48 8b 00             	mov    (%rax),%rax
    3009:	48 85 c0             	test   %rax,%rax
    300c:	74 21                	je     302f <splay_tree_insert_duplicates+0x63>
    300e:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3012:	48 8b 40 08          	mov    0x8(%rax),%rax
    3016:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    301a:	48 8b 12             	mov    (%rdx),%rdx
    301d:	48 8b 12             	mov    (%rdx),%rdx
    3020:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
    3024:	48 89 ce             	mov    %rcx,%rsi
    3027:	48 89 d7             	mov    %rdx,%rdi
    302a:	ff d0                	callq  *%rax
    302c:	89 45 fc             	mov    %eax,-0x4(%rbp)
    302f:	ba 14 06 00 00       	mov    $0x614,%edx
    3034:	48 8d 35 15 14 00 00 	lea    0x1415(%rip),%rsi        # 4450 <__FUNCTION__.4019>
    303b:	bf 20 00 00 00       	mov    $0x20,%edi
    3040:	e8 58 ec ff ff       	callq  1c9d <mymalloc>
    3045:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    3049:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    304e:	0f 84 b9 00 00 00    	je     310d <splay_tree_insert_duplicates+0x141>
    3054:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3058:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    305c:	48 89 10             	mov    %rdx,(%rax)
    305f:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3063:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    3067:	48 89 50 08          	mov    %rdx,0x8(%rax)
    306b:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    306f:	48 8b 00             	mov    (%rax),%rax
    3072:	48 85 c0             	test   %rax,%rax
    3075:	75 1a                	jne    3091 <splay_tree_insert_duplicates+0xc5>
    3077:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    307b:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    3082:	00 
    3083:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3087:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    308e:	00 
    308f:	eb 6e                	jmp    30ff <splay_tree_insert_duplicates+0x133>
    3091:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    3095:	79 35                	jns    30cc <splay_tree_insert_duplicates+0x100>
    3097:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    309b:	48 8b 10             	mov    (%rax),%rdx
    309e:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30a2:	48 89 50 10          	mov    %rdx,0x10(%rax)
    30a6:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30aa:	48 8b 40 10          	mov    0x10(%rax),%rax
    30ae:	48 8b 50 18          	mov    0x18(%rax),%rdx
    30b2:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30b6:	48 89 50 18          	mov    %rdx,0x18(%rax)
    30ba:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30be:	48 8b 40 10          	mov    0x10(%rax),%rax
    30c2:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    30c9:	00 
    30ca:	eb 33                	jmp    30ff <splay_tree_insert_duplicates+0x133>
    30cc:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    30d0:	48 8b 10             	mov    (%rax),%rdx
    30d3:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30d7:	48 89 50 18          	mov    %rdx,0x18(%rax)
    30db:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30df:	48 8b 40 18          	mov    0x18(%rax),%rax
    30e3:	48 8b 50 10          	mov    0x10(%rax),%rdx
    30e7:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30eb:	48 89 50 10          	mov    %rdx,0x10(%rax)
    30ef:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    30f3:	48 8b 40 18          	mov    0x18(%rax),%rax
    30f7:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    30fe:	00 
    30ff:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3103:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    3107:	48 89 10             	mov    %rdx,(%rax)
    310a:	90                   	nop
    310b:	eb 01                	jmp    310e <splay_tree_insert_duplicates+0x142>
    310d:	90                   	nop
    310e:	c9                   	leaveq 
    310f:	c3                   	retq   

0000000000003110 <splay_tree_remove>:
    3110:	55                   	push   %rbp
    3111:	48 89 e5             	mov    %rsp,%rbp
    3114:	48 83 ec 30          	sub    $0x30,%rsp
    3118:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    311c:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
    3120:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    3127:	00 
    3128:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    312f:	00 
    3130:	48 c7 45 e8 00 00 00 	movq   $0x0,-0x18(%rbp)
    3137:	00 
    3138:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
    313c:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    3140:	48 89 d6             	mov    %rdx,%rsi
    3143:	48 89 c7             	mov    %rax,%rdi
    3146:	e8 94 f8 ff ff       	callq  29df <splay_tree_splay>
    314b:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    314f:	48 8b 00             	mov    (%rax),%rax
    3152:	48 85 c0             	test   %rax,%rax
    3155:	0f 84 48 01 00 00    	je     32a3 <splay_tree_remove+0x193>
    315b:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    315f:	48 8b 40 08          	mov    0x8(%rax),%rax
    3163:	48 8b 55 d8          	mov    -0x28(%rbp),%rdx
    3167:	48 8b 12             	mov    (%rdx),%rdx
    316a:	48 8b 12             	mov    (%rdx),%rdx
    316d:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
    3171:	48 89 ce             	mov    %rcx,%rsi
    3174:	48 89 d7             	mov    %rdx,%rdi
    3177:	ff d0                	callq  *%rax
    3179:	85 c0                	test   %eax,%eax
    317b:	0f 85 22 01 00 00    	jne    32a3 <splay_tree_remove+0x193>
    3181:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    3185:	48 8b 00             	mov    (%rax),%rax
    3188:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    318c:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    3190:	48 8b 00             	mov    (%rax),%rax
    3193:	48 8b 40 10          	mov    0x10(%rax),%rax
    3197:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    319b:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    319f:	48 8b 00             	mov    (%rax),%rax
    31a2:	48 8b 40 18          	mov    0x18(%rax),%rax
    31a6:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
    31aa:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    31af:	74 3b                	je     31ec <splay_tree_remove+0xdc>
    31b1:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    31b5:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    31b9:	48 89 10             	mov    %rdx,(%rax)
    31bc:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    31c1:	74 34                	je     31f7 <splay_tree_remove+0xe7>
    31c3:	eb 0c                	jmp    31d1 <splay_tree_remove+0xc1>
    31c5:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    31c9:	48 8b 40 18          	mov    0x18(%rax),%rax
    31cd:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    31d1:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    31d5:	48 8b 40 18          	mov    0x18(%rax),%rax
    31d9:	48 85 c0             	test   %rax,%rax
    31dc:	75 e7                	jne    31c5 <splay_tree_remove+0xb5>
    31de:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    31e2:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    31e6:	48 89 50 18          	mov    %rdx,0x18(%rax)
    31ea:	eb 0b                	jmp    31f7 <splay_tree_remove+0xe7>
    31ec:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    31f0:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    31f4:	48 89 10             	mov    %rdx,(%rax)
    31f7:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    31fb:	48 8b 40 10          	mov    0x10(%rax),%rax
    31ff:	48 85 c0             	test   %rax,%rax
    3202:	74 2b                	je     322f <splay_tree_remove+0x11f>
    3204:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3208:	48 8b 00             	mov    (%rax),%rax
    320b:	48 85 c0             	test   %rax,%rax
    320e:	74 14                	je     3224 <splay_tree_remove+0x114>
    3210:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    3214:	48 8b 40 10          	mov    0x10(%rax),%rax
    3218:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    321c:	48 8b 12             	mov    (%rdx),%rdx
    321f:	48 89 d7             	mov    %rdx,%rdi
    3222:	ff d0                	callq  *%rax
    3224:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3228:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
    322f:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    3233:	48 8b 40 18          	mov    0x18(%rax),%rax
    3237:	48 85 c0             	test   %rax,%rax
    323a:	74 2e                	je     326a <splay_tree_remove+0x15a>
    323c:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3240:	48 8b 40 08          	mov    0x8(%rax),%rax
    3244:	48 85 c0             	test   %rax,%rax
    3247:	74 15                	je     325e <splay_tree_remove+0x14e>
    3249:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    324d:	48 8b 40 18          	mov    0x18(%rax),%rax
    3251:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    3255:	48 8b 52 08          	mov    0x8(%rdx),%rdx
    3259:	48 89 d7             	mov    %rdx,%rdi
    325c:	ff d0                	callq  *%rax
    325e:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3262:	48 c7 40 08 00 00 00 	movq   $0x0,0x8(%rax)
    3269:	00 
    326a:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    326e:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    3275:	00 
    3276:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    327a:	48 c7 40 18 00 00 00 	movq   $0x0,0x18(%rax)
    3281:	00 
    3282:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3286:	ba 70 06 00 00       	mov    $0x670,%edx
    328b:	48 8d 35 de 11 00 00 	lea    0x11de(%rip),%rsi        # 4470 <__FUNCTION__.4030>
    3292:	48 89 c7             	mov    %rax,%rdi
    3295:	e8 50 ea ff ff       	callq  1cea <myfree>
    329a:	48 c7 45 f0 00 00 00 	movq   $0x0,-0x10(%rbp)
    32a1:	00 
    32a2:	90                   	nop
    32a3:	90                   	nop
    32a4:	c9                   	leaveq 
    32a5:	c3                   	retq   

00000000000032a6 <splay_tree_lookup>:
    32a6:	55                   	push   %rbp
    32a7:	48 89 e5             	mov    %rsp,%rbp
    32aa:	48 83 ec 10          	sub    $0x10,%rsp
    32ae:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    32b2:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    32b6:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    32bb:	75 0a                	jne    32c7 <splay_tree_lookup+0x21>
    32bd:	b8 00 00 00 00       	mov    $0x0,%eax
    32c2:	e9 97 00 00 00       	jmpq   335e <splay_tree_lookup+0xb8>
    32c7:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    32cb:	48 8b 00             	mov    (%rax),%rax
    32ce:	48 85 c0             	test   %rax,%rax
    32d1:	75 0a                	jne    32dd <splay_tree_lookup+0x37>
    32d3:	b8 00 00 00 00       	mov    $0x0,%eax
    32d8:	e9 81 00 00 00       	jmpq   335e <splay_tree_lookup+0xb8>
    32dd:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    32e1:	48 8b 40 08          	mov    0x8(%rax),%rax
    32e5:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    32e9:	48 8b 12             	mov    (%rdx),%rdx
    32ec:	48 8b 12             	mov    (%rdx),%rdx
    32ef:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
    32f3:	48 89 ce             	mov    %rcx,%rsi
    32f6:	48 89 d7             	mov    %rdx,%rdi
    32f9:	ff d0                	callq  *%rax
    32fb:	85 c0                	test   %eax,%eax
    32fd:	75 09                	jne    3308 <splay_tree_lookup+0x62>
    32ff:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3303:	48 8b 00             	mov    (%rax),%rax
    3306:	eb 56                	jmp    335e <splay_tree_lookup+0xb8>
    3308:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    330c:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3310:	48 89 d6             	mov    %rdx,%rsi
    3313:	48 89 c7             	mov    %rax,%rdi
    3316:	e8 c4 f6 ff ff       	callq  29df <splay_tree_splay>
    331b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    331f:	48 8b 00             	mov    (%rax),%rax
    3322:	48 85 c0             	test   %rax,%rax
    3325:	75 07                	jne    332e <splay_tree_lookup+0x88>
    3327:	b8 00 00 00 00       	mov    $0x0,%eax
    332c:	eb 30                	jmp    335e <splay_tree_lookup+0xb8>
    332e:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3332:	48 8b 40 08          	mov    0x8(%rax),%rax
    3336:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    333a:	48 8b 12             	mov    (%rdx),%rdx
    333d:	48 8b 12             	mov    (%rdx),%rdx
    3340:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
    3344:	48 89 ce             	mov    %rcx,%rsi
    3347:	48 89 d7             	mov    %rdx,%rdi
    334a:	ff d0                	callq  *%rax
    334c:	85 c0                	test   %eax,%eax
    334e:	75 09                	jne    3359 <splay_tree_lookup+0xb3>
    3350:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3354:	48 8b 00             	mov    (%rax),%rax
    3357:	eb 05                	jmp    335e <splay_tree_lookup+0xb8>
    3359:	b8 00 00 00 00       	mov    $0x0,%eax
    335e:	c9                   	leaveq 
    335f:	c3                   	retq   

0000000000003360 <splay_tree_foreach>:
    3360:	55                   	push   %rbp
    3361:	48 89 e5             	mov    %rsp,%rbp
    3364:	48 83 ec 20          	sub    $0x20,%rsp
    3368:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    336c:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    3370:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
    3374:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    3379:	75 07                	jne    3382 <splay_tree_foreach+0x22>
    337b:	b8 00 00 00 00       	mov    $0x0,%eax
    3380:	eb 2e                	jmp    33b0 <splay_tree_foreach+0x50>
    3382:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3386:	48 8b 00             	mov    (%rax),%rax
    3389:	48 85 c0             	test   %rax,%rax
    338c:	75 07                	jne    3395 <splay_tree_foreach+0x35>
    338e:	b8 00 00 00 00       	mov    $0x0,%eax
    3393:	eb 1b                	jmp    33b0 <splay_tree_foreach+0x50>
    3395:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3399:	48 8b 30             	mov    (%rax),%rsi
    339c:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
    33a0:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    33a4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    33a8:	48 89 c7             	mov    %rax,%rdi
    33ab:	e8 b9 f8 ff ff       	callq  2c69 <splay_tree_foreach_helper>
    33b0:	c9                   	leaveq 
    33b1:	c3                   	retq   

00000000000033b2 <splay_tree_foreach_backwards>:
    33b2:	55                   	push   %rbp
    33b3:	48 89 e5             	mov    %rsp,%rbp
    33b6:	48 83 ec 30          	sub    $0x30,%rsp
    33ba:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    33be:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    33c2:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    33c6:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    33cd:	00 
    33ce:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    33d5:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    33da:	75 07                	jne    33e3 <splay_tree_foreach_backwards+0x31>
    33dc:	b8 00 00 00 00       	mov    $0x0,%eax
    33e1:	eb 7b                	jmp    345e <splay_tree_foreach_backwards+0xac>
    33e3:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    33e7:	48 8b 00             	mov    (%rax),%rax
    33ea:	48 85 c0             	test   %rax,%rax
    33ed:	75 07                	jne    33f6 <splay_tree_foreach_backwards+0x44>
    33ef:	b8 00 00 00 00       	mov    $0x0,%eax
    33f4:	eb 68                	jmp    345e <splay_tree_foreach_backwards+0xac>
    33f6:	48 83 7d e0 00       	cmpq   $0x0,-0x20(%rbp)
    33fb:	75 07                	jne    3404 <splay_tree_foreach_backwards+0x52>
    33fd:	b8 00 00 00 00       	mov    $0x0,%eax
    3402:	eb 5a                	jmp    345e <splay_tree_foreach_backwards+0xac>
    3404:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3408:	48 89 c7             	mov    %rax,%rdi
    340b:	e8 50 00 00 00       	callq  3460 <splay_tree_max>
    3410:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    3414:	eb 3c                	jmp    3452 <splay_tree_foreach_backwards+0xa0>
    3416:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
    341a:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    341e:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    3422:	48 89 ce             	mov    %rcx,%rsi
    3425:	48 89 d7             	mov    %rdx,%rdi
    3428:	ff d0                	callq  *%rax
    342a:	89 45 f4             	mov    %eax,-0xc(%rbp)
    342d:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    3431:	74 05                	je     3438 <splay_tree_foreach_backwards+0x86>
    3433:	8b 45 f4             	mov    -0xc(%rbp),%eax
    3436:	eb 26                	jmp    345e <splay_tree_foreach_backwards+0xac>
    3438:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    343c:	48 8b 10             	mov    (%rax),%rdx
    343f:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3443:	48 89 d6             	mov    %rdx,%rsi
    3446:	48 89 c7             	mov    %rax,%rdi
    3449:	e8 fc 00 00 00       	callq  354a <splay_tree_predecessor>
    344e:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    3452:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    3457:	75 bd                	jne    3416 <splay_tree_foreach_backwards+0x64>
    3459:	b8 00 00 00 00       	mov    $0x0,%eax
    345e:	c9                   	leaveq 
    345f:	c3                   	retq   

0000000000003460 <splay_tree_max>:
    3460:	55                   	push   %rbp
    3461:	48 89 e5             	mov    %rsp,%rbp
    3464:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    3468:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    346f:	00 
    3470:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    3475:	75 07                	jne    347e <splay_tree_max+0x1e>
    3477:	b8 00 00 00 00       	mov    $0x0,%eax
    347c:	eb 3d                	jmp    34bb <splay_tree_max+0x5b>
    347e:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3482:	48 8b 00             	mov    (%rax),%rax
    3485:	48 85 c0             	test   %rax,%rax
    3488:	75 07                	jne    3491 <splay_tree_max+0x31>
    348a:	b8 00 00 00 00       	mov    $0x0,%eax
    348f:	eb 2a                	jmp    34bb <splay_tree_max+0x5b>
    3491:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3495:	48 8b 00             	mov    (%rax),%rax
    3498:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    349c:	eb 0c                	jmp    34aa <splay_tree_max+0x4a>
    349e:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    34a2:	48 8b 40 18          	mov    0x18(%rax),%rax
    34a6:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    34aa:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    34ae:	48 8b 40 18          	mov    0x18(%rax),%rax
    34b2:	48 85 c0             	test   %rax,%rax
    34b5:	75 e7                	jne    349e <splay_tree_max+0x3e>
    34b7:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    34bb:	5d                   	pop    %rbp
    34bc:	c3                   	retq   

00000000000034bd <splay_tree_min>:
    34bd:	55                   	push   %rbp
    34be:	48 89 e5             	mov    %rsp,%rbp
    34c1:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    34c5:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    34cc:	00 
    34cd:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    34d2:	75 07                	jne    34db <splay_tree_min+0x1e>
    34d4:	b8 00 00 00 00       	mov    $0x0,%eax
    34d9:	eb 3d                	jmp    3518 <splay_tree_min+0x5b>
    34db:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    34df:	48 8b 00             	mov    (%rax),%rax
    34e2:	48 85 c0             	test   %rax,%rax
    34e5:	75 07                	jne    34ee <splay_tree_min+0x31>
    34e7:	b8 00 00 00 00       	mov    $0x0,%eax
    34ec:	eb 2a                	jmp    3518 <splay_tree_min+0x5b>
    34ee:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    34f2:	48 8b 00             	mov    (%rax),%rax
    34f5:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    34f9:	eb 0c                	jmp    3507 <splay_tree_min+0x4a>
    34fb:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    34ff:	48 8b 40 10          	mov    0x10(%rax),%rax
    3503:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    3507:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    350b:	48 8b 40 10          	mov    0x10(%rax),%rax
    350f:	48 85 c0             	test   %rax,%rax
    3512:	75 e7                	jne    34fb <splay_tree_min+0x3e>
    3514:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3518:	5d                   	pop    %rbp
    3519:	c3                   	retq   

000000000000351a <splay_tree_has_data>:
    351a:	55                   	push   %rbp
    351b:	48 89 e5             	mov    %rsp,%rbp
    351e:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    3522:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    3527:	75 07                	jne    3530 <splay_tree_has_data+0x16>
    3529:	b8 00 00 00 00       	mov    $0x0,%eax
    352e:	eb 18                	jmp    3548 <splay_tree_has_data+0x2e>
    3530:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3534:	48 8b 00             	mov    (%rax),%rax
    3537:	48 85 c0             	test   %rax,%rax
    353a:	74 07                	je     3543 <splay_tree_has_data+0x29>
    353c:	b8 01 00 00 00       	mov    $0x1,%eax
    3541:	eb 05                	jmp    3548 <splay_tree_has_data+0x2e>
    3543:	b8 00 00 00 00       	mov    $0x0,%eax
    3548:	5d                   	pop    %rbp
    3549:	c3                   	retq   

000000000000354a <splay_tree_predecessor>:
    354a:	55                   	push   %rbp
    354b:	48 89 e5             	mov    %rsp,%rbp
    354e:	48 83 ec 20          	sub    $0x20,%rsp
    3552:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    3556:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    355a:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    3561:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    3568:	00 
    3569:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    356e:	75 0a                	jne    357a <splay_tree_predecessor+0x30>
    3570:	b8 00 00 00 00       	mov    $0x0,%eax
    3575:	e9 8b 00 00 00       	jmpq   3605 <splay_tree_predecessor+0xbb>
    357a:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    357e:	48 8b 00             	mov    (%rax),%rax
    3581:	48 85 c0             	test   %rax,%rax
    3584:	75 07                	jne    358d <splay_tree_predecessor+0x43>
    3586:	b8 00 00 00 00       	mov    $0x0,%eax
    358b:	eb 78                	jmp    3605 <splay_tree_predecessor+0xbb>
    358d:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    3591:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3595:	48 89 d6             	mov    %rdx,%rsi
    3598:	48 89 c7             	mov    %rax,%rdi
    359b:	e8 3f f4 ff ff       	callq  29df <splay_tree_splay>
    35a0:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    35a4:	48 8b 40 08          	mov    0x8(%rax),%rax
    35a8:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    35ac:	48 8b 12             	mov    (%rdx),%rdx
    35af:	48 8b 12             	mov    (%rdx),%rdx
    35b2:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
    35b6:	48 89 ce             	mov    %rcx,%rsi
    35b9:	48 89 d7             	mov    %rdx,%rdi
    35bc:	ff d0                	callq  *%rax
    35be:	89 45 f4             	mov    %eax,-0xc(%rbp)
    35c1:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    35c5:	79 09                	jns    35d0 <splay_tree_predecessor+0x86>
    35c7:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    35cb:	48 8b 00             	mov    (%rax),%rax
    35ce:	eb 35                	jmp    3605 <splay_tree_predecessor+0xbb>
    35d0:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    35d4:	48 8b 00             	mov    (%rax),%rax
    35d7:	48 8b 40 10          	mov    0x10(%rax),%rax
    35db:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    35df:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    35e4:	74 1b                	je     3601 <splay_tree_predecessor+0xb7>
    35e6:	eb 0c                	jmp    35f4 <splay_tree_predecessor+0xaa>
    35e8:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    35ec:	48 8b 40 18          	mov    0x18(%rax),%rax
    35f0:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    35f4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    35f8:	48 8b 40 18          	mov    0x18(%rax),%rax
    35fc:	48 85 c0             	test   %rax,%rax
    35ff:	75 e7                	jne    35e8 <splay_tree_predecessor+0x9e>
    3601:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3605:	c9                   	leaveq 
    3606:	c3                   	retq   

0000000000003607 <splay_tree_successor>:
    3607:	55                   	push   %rbp
    3608:	48 89 e5             	mov    %rsp,%rbp
    360b:	48 83 ec 20          	sub    $0x20,%rsp
    360f:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    3613:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    3617:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    361e:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    3625:	00 
    3626:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    362b:	75 0a                	jne    3637 <splay_tree_successor+0x30>
    362d:	b8 00 00 00 00       	mov    $0x0,%eax
    3632:	e9 8b 00 00 00       	jmpq   36c2 <splay_tree_successor+0xbb>
    3637:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    363b:	48 8b 00             	mov    (%rax),%rax
    363e:	48 85 c0             	test   %rax,%rax
    3641:	75 07                	jne    364a <splay_tree_successor+0x43>
    3643:	b8 00 00 00 00       	mov    $0x0,%eax
    3648:	eb 78                	jmp    36c2 <splay_tree_successor+0xbb>
    364a:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
    364e:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3652:	48 89 d6             	mov    %rdx,%rsi
    3655:	48 89 c7             	mov    %rax,%rdi
    3658:	e8 82 f3 ff ff       	callq  29df <splay_tree_splay>
    365d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3661:	48 8b 40 08          	mov    0x8(%rax),%rax
    3665:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    3669:	48 8b 12             	mov    (%rdx),%rdx
    366c:	48 8b 12             	mov    (%rdx),%rdx
    366f:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
    3673:	48 89 ce             	mov    %rcx,%rsi
    3676:	48 89 d7             	mov    %rdx,%rdi
    3679:	ff d0                	callq  *%rax
    367b:	89 45 f4             	mov    %eax,-0xc(%rbp)
    367e:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
    3682:	7e 09                	jle    368d <splay_tree_successor+0x86>
    3684:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3688:	48 8b 00             	mov    (%rax),%rax
    368b:	eb 35                	jmp    36c2 <splay_tree_successor+0xbb>
    368d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3691:	48 8b 00             	mov    (%rax),%rax
    3694:	48 8b 40 18          	mov    0x18(%rax),%rax
    3698:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    369c:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    36a1:	74 1b                	je     36be <splay_tree_successor+0xb7>
    36a3:	eb 0c                	jmp    36b1 <splay_tree_successor+0xaa>
    36a5:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    36a9:	48 8b 40 10          	mov    0x10(%rax),%rax
    36ad:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    36b1:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    36b5:	48 8b 40 10          	mov    0x10(%rax),%rax
    36b9:	48 85 c0             	test   %rax,%rax
    36bc:	75 e7                	jne    36a5 <splay_tree_successor+0x9e>
    36be:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    36c2:	c9                   	leaveq 
    36c3:	c3                   	retq   

00000000000036c4 <splay_tree_copy>:
    36c4:	55                   	push   %rbp
    36c5:	48 89 e5             	mov    %rsp,%rbp
    36c8:	48 83 ec 20          	sub    $0x20,%rsp
    36cc:	48 89 7d e8          	mov    %rdi,-0x18(%rbp)
    36d0:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
    36d4:	48 c7 45 f8 00 00 00 	movq   $0x0,-0x8(%rbp)
    36db:	00 
    36dc:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
    36e1:	74 67                	je     374a <splay_tree_copy+0x86>
    36e3:	48 83 7d e0 00       	cmpq   $0x0,-0x20(%rbp)
    36e8:	74 63                	je     374d <splay_tree_copy+0x89>
    36ea:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    36ee:	48 8b 00             	mov    (%rax),%rax
    36f1:	48 85 c0             	test   %rax,%rax
    36f4:	74 5a                	je     3750 <splay_tree_copy+0x8c>
    36f6:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    36fa:	48 89 c7             	mov    %rax,%rdi
    36fd:	e8 bb fd ff ff       	callq  34bd <splay_tree_min>
    3702:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    3706:	eb 38                	jmp    3740 <splay_tree_copy+0x7c>
    3708:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    370c:	48 8b 50 08          	mov    0x8(%rax),%rdx
    3710:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3714:	48 8b 08             	mov    (%rax),%rcx
    3717:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
    371b:	48 89 ce             	mov    %rcx,%rsi
    371e:	48 89 c7             	mov    %rax,%rdi
    3721:	e8 f9 f6 ff ff       	callq  2e1f <splay_tree_insert>
    3726:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    372a:	48 8b 10             	mov    (%rax),%rdx
    372d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
    3731:	48 89 d6             	mov    %rdx,%rsi
    3734:	48 89 c7             	mov    %rax,%rdi
    3737:	e8 cb fe ff ff       	callq  3607 <splay_tree_successor>
    373c:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    3740:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    3745:	75 c1                	jne    3708 <splay_tree_copy+0x44>
    3747:	90                   	nop
    3748:	eb 06                	jmp    3750 <splay_tree_copy+0x8c>
    374a:	90                   	nop
    374b:	eb 04                	jmp    3751 <splay_tree_copy+0x8d>
    374d:	90                   	nop
    374e:	eb 01                	jmp    3751 <splay_tree_copy+0x8d>
    3750:	90                   	nop
    3751:	c9                   	leaveq 
    3752:	c3                   	retq   

0000000000003753 <splay_tree_free_value>:
    3753:	55                   	push   %rbp
    3754:	48 89 e5             	mov    %rsp,%rbp
    3757:	48 83 ec 10          	sub    $0x10,%rsp
    375b:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    375f:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    3764:	74 19                	je     377f <splay_tree_free_value+0x2c>
    3766:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    376a:	ba b0 07 00 00       	mov    $0x7b0,%edx
    376f:	48 8d 35 1a 0d 00 00 	lea    0xd1a(%rip),%rsi        # 4490 <__FUNCTION__.4096>
    3776:	48 89 c7             	mov    %rax,%rdi
    3779:	e8 6c e5 ff ff       	callq  1cea <myfree>
    377e:	90                   	nop
    377f:	90                   	nop
    3780:	c9                   	leaveq 
    3781:	c3                   	retq   

0000000000003782 <splay_tree_free_key>:
    3782:	55                   	push   %rbp
    3783:	48 89 e5             	mov    %rsp,%rbp
    3786:	48 83 ec 10          	sub    $0x10,%rsp
    378a:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    378e:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    3793:	74 19                	je     37ae <splay_tree_free_key+0x2c>
    3795:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    3799:	ba bb 07 00 00       	mov    $0x7bb,%edx
    379e:	48 8d 35 0b 0d 00 00 	lea    0xd0b(%rip),%rsi        # 44b0 <__FUNCTION__.4100>
    37a5:	48 89 c7             	mov    %rax,%rdi
    37a8:	e8 3d e5 ff ff       	callq  1cea <myfree>
    37ad:	90                   	nop
    37ae:	90                   	nop
    37af:	c9                   	leaveq 
    37b0:	c3                   	retq   

00000000000037b1 <splay_tree_compare_ints>:
    37b1:	55                   	push   %rbp
    37b2:	48 89 e5             	mov    %rsp,%rbp
    37b5:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    37b9:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    37bd:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    37c1:	89 c2                	mov    %eax,%edx
    37c3:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    37c7:	39 c2                	cmp    %eax,%edx
    37c9:	7d 07                	jge    37d2 <splay_tree_compare_ints+0x21>
    37cb:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    37d0:	eb 1a                	jmp    37ec <splay_tree_compare_ints+0x3b>
    37d2:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    37d6:	89 c2                	mov    %eax,%edx
    37d8:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    37dc:	39 c2                	cmp    %eax,%edx
    37de:	7e 07                	jle    37e7 <splay_tree_compare_ints+0x36>
    37e0:	b8 01 00 00 00       	mov    $0x1,%eax
    37e5:	eb 05                	jmp    37ec <splay_tree_compare_ints+0x3b>
    37e7:	b8 00 00 00 00       	mov    $0x0,%eax
    37ec:	5d                   	pop    %rbp
    37ed:	c3                   	retq   

00000000000037ee <splay_tree_compare_pointers>:
    37ee:	55                   	push   %rbp
    37ef:	48 89 e5             	mov    %rsp,%rbp
    37f2:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    37f6:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    37fa:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    37ff:	75 0e                	jne    380f <splay_tree_compare_pointers+0x21>
    3801:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    3806:	75 07                	jne    380f <splay_tree_compare_pointers+0x21>
    3808:	b8 00 00 00 00       	mov    $0x0,%eax
    380d:	eb 2d                	jmp    383c <splay_tree_compare_pointers+0x4e>
    380f:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    3813:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    3817:	48 39 c2             	cmp    %rax,%rdx
    381a:	73 07                	jae    3823 <splay_tree_compare_pointers+0x35>
    381c:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    3821:	eb 19                	jmp    383c <splay_tree_compare_pointers+0x4e>
    3823:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    3827:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    382b:	48 39 c2             	cmp    %rax,%rdx
    382e:	76 07                	jbe    3837 <splay_tree_compare_pointers+0x49>
    3830:	b8 01 00 00 00       	mov    $0x1,%eax
    3835:	eb 05                	jmp    383c <splay_tree_compare_pointers+0x4e>
    3837:	b8 00 00 00 00       	mov    $0x0,%eax
    383c:	5d                   	pop    %rbp
    383d:	c3                   	retq   

000000000000383e <splay_tree_compare_strings>:
    383e:	55                   	push   %rbp
    383f:	48 89 e5             	mov    %rsp,%rbp
    3842:	48 83 ec 30          	sub    $0x30,%rsp
    3846:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    384a:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
    384e:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    3852:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    3856:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
    385a:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
    385e:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%rbp)
    3865:	48 83 7d d8 00       	cmpq   $0x0,-0x28(%rbp)
    386a:	75 0e                	jne    387a <splay_tree_compare_strings+0x3c>
    386c:	48 83 7d d0 00       	cmpq   $0x0,-0x30(%rbp)
    3871:	75 07                	jne    387a <splay_tree_compare_strings+0x3c>
    3873:	b8 00 00 00 00       	mov    $0x0,%eax
    3878:	eb 46                	jmp    38c0 <splay_tree_compare_strings+0x82>
    387a:	48 83 7d f8 00       	cmpq   $0x0,-0x8(%rbp)
    387f:	75 07                	jne    3888 <splay_tree_compare_strings+0x4a>
    3881:	b8 00 00 00 00       	mov    $0x0,%eax
    3886:	eb 38                	jmp    38c0 <splay_tree_compare_strings+0x82>
    3888:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    388d:	75 07                	jne    3896 <splay_tree_compare_strings+0x58>
    388f:	b8 00 00 00 00       	mov    $0x0,%eax
    3894:	eb 2a                	jmp    38c0 <splay_tree_compare_strings+0x82>
    3896:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    389a:	48 3b 45 f0          	cmp    -0x10(%rbp),%rax
    389e:	75 07                	jne    38a7 <splay_tree_compare_strings+0x69>
    38a0:	b8 00 00 00 00       	mov    $0x0,%eax
    38a5:	eb 19                	jmp    38c0 <splay_tree_compare_strings+0x82>
    38a7:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    38ab:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    38af:	48 89 d6             	mov    %rdx,%rsi
    38b2:	48 89 c7             	mov    %rax,%rdi
    38b5:	e8 d6 d7 ff ff       	callq  1090 <strcmp@plt>
    38ba:	89 45 ec             	mov    %eax,-0x14(%rbp)
    38bd:	8b 45 ec             	mov    -0x14(%rbp),%eax
    38c0:	c9                   	leaveq 
    38c1:	c3                   	retq   
    38c2:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
    38c9:	00 00 00 
    38cc:	0f 1f 40 00          	nopl   0x0(%rax)

00000000000038d0 <__libc_csu_init>:
    38d0:	41 57                	push   %r15
    38d2:	49 89 d7             	mov    %rdx,%r15
    38d5:	41 56                	push   %r14
    38d7:	49 89 f6             	mov    %rsi,%r14
    38da:	41 55                	push   %r13
    38dc:	41 89 fd             	mov    %edi,%r13d
    38df:	41 54                	push   %r12
    38e1:	4c 8d 25 00 25 00 00 	lea    0x2500(%rip),%r12        # 5de8 <__frame_dummy_init_array_entry>
    38e8:	55                   	push   %rbp
    38e9:	48 8d 2d 00 25 00 00 	lea    0x2500(%rip),%rbp        # 5df0 <__init_array_end>
    38f0:	53                   	push   %rbx
    38f1:	4c 29 e5             	sub    %r12,%rbp
    38f4:	48 83 ec 08          	sub    $0x8,%rsp
    38f8:	e8 03 d7 ff ff       	callq  1000 <_init>
    38fd:	48 c1 fd 03          	sar    $0x3,%rbp
    3901:	74 1b                	je     391e <__libc_csu_init+0x4e>
    3903:	31 db                	xor    %ebx,%ebx
    3905:	0f 1f 00             	nopl   (%rax)
    3908:	4c 89 fa             	mov    %r15,%rdx
    390b:	4c 89 f6             	mov    %r14,%rsi
    390e:	44 89 ef             	mov    %r13d,%edi
    3911:	41 ff 14 dc          	callq  *(%r12,%rbx,8)
    3915:	48 83 c3 01          	add    $0x1,%rbx
    3919:	48 39 dd             	cmp    %rbx,%rbp
    391c:	75 ea                	jne    3908 <__libc_csu_init+0x38>
    391e:	48 83 c4 08          	add    $0x8,%rsp
    3922:	5b                   	pop    %rbx
    3923:	5d                   	pop    %rbp
    3924:	41 5c                	pop    %r12
    3926:	41 5d                	pop    %r13
    3928:	41 5e                	pop    %r14
    392a:	41 5f                	pop    %r15
    392c:	c3                   	retq   
    392d:	0f 1f 00             	nopl   (%rax)

0000000000003930 <__libc_csu_fini>:
    3930:	c3                   	retq   
